2018-05-30 Ed Schonberg <schonberg@adacore.com>
gcc/ada/
* exp_ch11.adb (Replace_Raise_By_Goto): The transfomation is legal even
if the local raise statement includes a string expression. This
expression might be picked up by an outer handler or discarded, but
plays no role in this transformation.
From-SVN: r260949
+2018-05-30 Ed Schonberg <schonberg@adacore.com>
+
+ * exp_ch11.adb (Replace_Raise_By_Goto): The transfomation is legal even
+ if the local raise statement includes a string expression. This
+ expression might be picked up by an outer handler or discarded, but
+ plays no role in this transformation.
+
2018-05-30 Hristian Kirtchev <kirtchev@adacore.com>
* exp_aggr.adb, exp_unst.adb, freeze.adb, libgnat/a-direct.adb: Minor
Cond := Condition (Raise_S);
-- The only other possibility is a node that is or used to be a
- -- simple raise statement.
+ -- simple raise statement. Note that the string expression in
+ -- the original Raise statement is ignored.
else
Orig := Original_Node (Raise_S);
pragma Assert (Nkind (Orig) = N_Raise_Statement
- and then Present (Name (Orig))
- and then No (Expression (Orig)));
+ and then Present (Name (Orig)));
Excep := Entity (Name (Orig));
Cond := Empty;
end if;