[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Mon, 18 Apr 2016 12:47:02 +0000 (14:47 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Mon, 18 Apr 2016 12:47:02 +0000 (14:47 +0200)
2016-04-18  Arnaud Charlet  <charlet@adacore.com>

* exp_ch4.adb: Update comment.

2016-04-18  Eric Botcazou  <ebotcazou@adacore.com>

* exp_ch6.adb (Expand_Call): Make sure instantiations are
registered only once as pending here.

From-SVN: r235142

gcc/ada/ChangeLog
gcc/ada/exp_ch4.adb
gcc/ada/exp_ch6.adb

index 9a1aeae53e5d3bc8c90c7573b8bfe6811c3884c0..b63747205b8b0127208ce4474dc3b574bb865adb 100644 (file)
@@ -1,3 +1,12 @@
+2016-04-18  Arnaud Charlet  <charlet@adacore.com>
+
+       * exp_ch4.adb: Update comment.
+
+2016-04-18  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * exp_ch6.adb (Expand_Call): Make sure instantiations are
+       registered only once as pending here.
+
 2016-04-18  Arnaud Charlet  <charlet@adacore.com>
 
        * exp_ch4.adb, gnat1drv.adb, opt.ads, sem_res.adb
index b08ebfe0f919fb0697df1d1c5d594dd128f7cb35..08b99a3f7832e7e046772c847eed3ac650f20fb7 100644 (file)
@@ -5290,9 +5290,8 @@ package body Exp_Ch4 is
 
                if Present (Actions) then
 
-                  --  If we want to minimize the use of
-                  --  Expression_With_Actions, just skip the optimization, it
-                  --  is not critical for correctness.
+                  --  To minimize the use of Expression_With_Actions, just skip
+                  --  the optimization as it is not critical for correctness.
 
                   if Minimize_Expression_With_Actions then
                      return False;
index 982317222581c29b265992deb51c33f8bf33d006..b1d4293146caa8a894124896acf8e82dfdacb410 100644 (file)
@@ -3922,7 +3922,10 @@ package body Exp_Ch6 is
                      Inst := Scope (Inst);
                   end loop;
 
-                  if Present (Inst) and then Is_Generic_Instance (Inst) then
+                  if Present (Inst)
+                    and then Is_Generic_Instance (Inst)
+                    and then not Is_Inlined (Inst)
+                  then
                      Set_Is_Inlined (Inst);
                      Decl := Unit_Declaration_Node (Inst);