diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 15:48:36 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2011-08-29 15:48:36 +0200 |
commit | ddf67a1d5d44d028c1c90ef16c8f5e1d3c6d102c (patch) | |
tree | bdea3a0b0de9cd409e4fa3488b77a5a34819faea /gcc/ada/inline.adb | |
parent | 690943fcd4d667a4de8614a565bc13a66816c94a (diff) | |
download | gcc-ddf67a1d5d44d028c1c90ef16c8f5e1d3c6d102c.zip gcc-ddf67a1d5d44d028c1c90ef16c8f5e1d3c6d102c.tar.gz gcc-ddf67a1d5d44d028c1c90ef16c8f5e1d3c6d102c.tar.bz2 |
[multiple changes]
2011-08-29 Vincent Celier <celier@adacore.com>
* make.adb (Scan_Make_Arg): Take any option as is in packages Compiler,
Binder or Linker of the main project file.
2011-08-29 Ed Schonberg <schonberg@adacore.com>
* inline.adb (Add_Scopes_To_Clean): Exclude any entity within a generic
unit.
2011-08-29 Yannick Moy <moy@adacore.com>
* exp_ch9.adb: Partial revert of previous change for Alfa mode
2011-08-29 Yannick Moy <moy@adacore.com>
* exp_ch11.adb: Minor expansion of comment.
2011-08-29 Yannick Moy <moy@adacore.com>
* lib-xref-alfa.adb (Add_ALFA_Scope): Treat generic entities.
2011-08-29 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Resolve_Arithmetic_Op): If the node has a universal
interpretation, set the type before resolving the operands, because
legality checks on an exponention operand need to know the type of the
context.
2011-08-29 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Analyze_Package_Instantiation): Do not set delayed
cleanups on a master if the instance is within a generic unit.
Complement to the corresponding fix to inline.adb for K520-030.
2011-08-29 Tristan Gingold <gingold@adacore.com>
* exp_ch7.adb (Build_Raise_Statement): Raise PE instead of the current
occurrence.
* exp_intr.adb: Minor comment fix.
2011-08-29 Bob Duff <duff@adacore.com>
* sem_ch13.adb (Analyze_Aspect_Specifications): Fix cases where
Delay_Required was used as an uninitialized variable.
From-SVN: r178233
Diffstat (limited to 'gcc/ada/inline.adb')
-rw-r--r-- | gcc/ada/inline.adb | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/gcc/ada/inline.adb b/gcc/ada/inline.adb index ec534e1..0eb8dce 100644 --- a/gcc/ada/inline.adb +++ b/gcc/ada/inline.adb @@ -496,8 +496,10 @@ package body Inline is return; end if; - -- If the instance appears within a generic subprogram there is nothing - -- to finalize either. + -- If the instance is within a generic unit, no finalization code + -- can be generated. Note that at this point all bodies have been + -- analyzed, and the scope stack itself is not present, and the flag + -- Inside_A_Generic is not set. declare S : Entity_Id; @@ -505,7 +507,7 @@ package body Inline is begin S := Scope (Inst); while Present (S) and then S /= Standard_Standard loop - if Is_Generic_Subprogram (S) then + if Is_Generic_Unit (S) then return; end if; |