sem_ch6.adb (Check_Inline_Pragma): if the subprogram has no spec then move its aspect...
authorJavier Miranda <miranda@adacore.com>
Wed, 6 Jul 2016 13:45:55 +0000 (13:45 +0000)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 6 Jul 2016 13:45:55 +0000 (15:45 +0200)
2016-07-06  Javier Miranda  <miranda@adacore.com>

* sem_ch6.adb (Check_Inline_Pragma): if the subprogram has no spec
then move its aspects to the internally built subprogram spec.

From-SVN: r238052

gcc/ada/ChangeLog
gcc/ada/sem_ch6.adb

index 98e47fbc7589299d23cf348b8bf68399bf48f80f..8954f8b04ea52bf0e2fa1ea1f3f2bb8fdf579f81 100644 (file)
@@ -1,3 +1,8 @@
+2016-07-06  Javier Miranda  <miranda@adacore.com>
+
+       * sem_ch6.adb (Check_Inline_Pragma): if the subprogram has no spec
+       then move its aspects to the internally built subprogram spec.
+
 2016-07-06  Yannick Moy  <moy@adacore.com>
 
        * sem_ch6.adb (Analyze_Expression_Function): Mark body of
index a47ebda2807102227b9b544df5d8b65cd767db67..c9c0f7f46056f02f97012f993034bf4c9181e69f 100644 (file)
@@ -2665,6 +2665,12 @@ package body Sem_Ch6 is
                        (Specification (Decl), Plist);
                   end if;
 
+                  --  Move aspects to the new spec
+
+                  if Has_Aspects (N) then
+                     Move_Aspects (N, To => Decl);
+                  end if;
+
                   Insert_Before (N, Decl);
                   Analyze (Decl);
                   Analyze (Prag);