diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-04-27 14:55:18 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-04-27 14:55:18 +0200 |
commit | db99c46e1d6d3ae3323d0e5ae1dc739291af7143 (patch) | |
tree | 3b852b556143ed9a1fe9a1f0c8a1c04e811bffd3 /gcc/ada/inline.adb | |
parent | c6c8d059421efe3d025483c11c66941a8d1926a4 (diff) | |
download | gcc-db99c46e1d6d3ae3323d0e5ae1dc739291af7143.zip gcc-db99c46e1d6d3ae3323d0e5ae1dc739291af7143.tar.gz gcc-db99c46e1d6d3ae3323d0e5ae1dc739291af7143.tar.bz2 |
[multiple changes]
2016-04-27 Bob Duff <duff@adacore.com>
* a-coinve.adb, a-comutr.adb, a-conhel.adb, a-convec.adb,
exp_util.adb: Remove assertions that can fail in obscure cases when
assertions are turned on but tampering checks are turned off.
2016-04-27 Javier Miranda <miranda@adacore.com>
* exp_ch6.adb (Add_Call_By_Copy_Code,
Add_Simple_Call_By_Copy_Code, Expand_Actuals): Handle formals
whose type comes from the limited view.
2016-04-27 Yannick Moy <moy@adacore.com>
* a-textio.adb: Complete previous patch.
2016-04-27 Yannick Moy <moy@adacore.com>
* inline.adb (Expand_Inlined_Call): Use Cannot_Inline instead of
Error_Msg_N to issue message about impossibility to inline call,
with slight change of message.
2016-04-27 Hristian Kirtchev <kirtchev@adacore.com>
* exp_spark.adb (Expand_Potential_Renaming): Removed.
(Expand_SPARK): Update the call to expand a potential renaming.
(Expand_SPARK_Potential_Renaming): New routine.
* exp_spark.ads (Expand_SPARK_Potential_Renaming): New routine.
* sem.adb Add with and use clauses for Exp_SPARK.
(Analyze): Expand a non-overloaded potential renaming for SPARK.
2016-04-27 Ed Schonberg <schonberg@adacore.com>
* sem_ch3.adb (Constrain_Discriminated_Type): In an instance,
check full view for the presence of defaulted discriminants,
even when the partial view of a private type has no visible and
no unknown discriminants.
From-SVN: r235497
Diffstat (limited to 'gcc/ada/inline.adb')
-rw-r--r-- | gcc/ada/inline.adb | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/gcc/ada/inline.adb b/gcc/ada/inline.adb index 4a04e11..9b142c1 100644 --- a/gcc/ada/inline.adb +++ b/gcc/ada/inline.adb @@ -2761,17 +2761,9 @@ package body Inline is -- subprograms this must be done explicitly. if In_Open_Scopes (Subp) then - Error_Msg_N ("call to recursive subprogram cannot be inlined??", N); + Cannot_Inline + ("cannot inline call to recursive subprogram?", N, Subp); Set_Is_Inlined (Subp, False); - - -- In GNATprove mode, issue a warning, and indicate that the - -- subprogram is not always inlined by setting flag Is_Inlined_Always - -- to False. - - if GNATprove_Mode then - Set_Is_Inlined_Always (Subp, False); - end if; - return; -- Skip inlining if this is not a true inlining since the attribute @@ -2787,8 +2779,8 @@ package body Inline is elsif Is_Unc and then - Nkind (First (Statements (Handled_Statement_Sequence (Orig_Bod)))) - = N_Extended_Return_Statement + Nkind (First (Statements (Handled_Statement_Sequence (Orig_Bod)))) = + N_Extended_Return_Statement and then not Back_End_Inlining then return; |