[gcc(refs/users/aoliva/heads/testme)] hardcfr: mark throw-expected functions [ada/gcc-interface]
Alexandre Oliva
aoliva@gcc.gnu.org
Thu Jun 8 10:58:36 GMT 2023
https://gcc.gnu.org/g:2cbdae3a00b1c4065949ccf2a88efddcde22c7ea
commit 2cbdae3a00b1c4065949ccf2a88efddcde22c7ea
Author: Alexandre Oliva <oliva@adacore.com>
Date: Wed Oct 19 20:36:20 2022 -0300
hardcfr: mark throw-expected functions [ada/gcc-interface]
Mark exception-(re)raising builtin declarations with ECF_THROW.
for gcc/ada/gcc-interface/ChangeLog
* trans.cc (gigi): Mark __gnat_reraise_zcx with ECF_THROW.
(build_raise_check): Likewise for all rcheck subprograms.
Diff:
---
gcc/ada/gcc-interface/trans.cc | 2 ++
1 file changed, 2 insertions(+)
diff --git a/gcc/ada/gcc-interface/trans.cc b/gcc/ada/gcc-interface/trans.cc
index ddc7b6dde1e..965565ad2da 100644
--- a/gcc/ada/gcc-interface/trans.cc
+++ b/gcc/ada/gcc-interface/trans.cc
@@ -519,6 +519,7 @@ gigi (Node_Id gnat_root,
ftype, NULL_TREE,
is_default, true, true, true, false, false, NULL,
Empty);
+ set_call_expr_flags (reraise_zcx_decl, ECF_NORETURN | ECF_THROW);
/* Dummy objects to materialize "others" and "all others" in the exception
tables. These are exported by a-exexpr-gcc.adb, so see this unit for
@@ -721,6 +722,7 @@ build_raise_check (int check, enum exception_info_kind kind)
= create_subprog_decl (get_identifier (Name_Buffer), NULL_TREE, ftype,
NULL_TREE, is_default, true, true, true, false,
false, NULL, Empty);
+ set_call_expr_flags (result, ECF_NORETURN | ECF_THROW);
return result;
}
More information about the Gcc-cvs
mailing list