[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 30 Oct 2014 11:44:20 +0000 (12:44 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 30 Oct 2014 11:44:20 +0000 (12:44 +0100)
2014-10-30  Ed Schonberg  <schonberg@adacore.com>

* exp_util.ads, exp_util.adb (Following_Address_Clause): Modify
Has_Following_Address_Clause so that it returns the address
clause if present, rather than a boolean value.
* sem_ch3.adb (Analyze_Object_Declaration): use
Following_Address_Clause.
* exp_ch3.adb (Expand_N_Object_Declaration): When a tagged object
is initialized, insert tag assignment after object is frozen,
which may be after an address clause that follows the declaration.

2014-10-30  Tristan Gingold  <gingold@adacore.com>

* system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads,
system-vxworks-arm.ads, system-freebsd-x86_64.ads,
system-linux-hppa.ads, system-linux-s390.ads,
system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads,
system-vxworks-sparcv9.ads, system-linux-ppc.ads, system-aix64.ads,
system-linux-sh4.ads, system-solaris-x86.ads, system-linux-x86_64.ads,
system-linux-x86.ads, system-vxworks-ppc.ads, system-hpux.ads,
system-linux-armel.ads, system-darwin-ppc.ads, system-solaris-sparc.ads,
system-vxworks-m68k.ads, system-hpux-ia64.ads, system.ads,
system-solaris-x86_64.ads, system-mingw-x86_64.ads,
system-vxworks-mips.ads, system-linux-sparc.ads, system-freebsd-x86.ads,
system-aix.ads, system-darwin-x86_64.ads, system-vxworks-x86.ads: Add
pragma No_Elaboration_Code_All.

2014-10-30  Eric Botcazou  <ebotcazou@adacore.com>

* gnat_ugn.texi: Minor improvement to -flto entry.

From-SVN: r216921

39 files changed:
gcc/ada/ChangeLog
gcc/ada/exp_ch3.adb
gcc/ada/exp_util.adb
gcc/ada/exp_util.ads
gcc/ada/gnat_ugn.texi
gcc/ada/sem_ch3.adb
gcc/ada/system-aix.ads
gcc/ada/system-aix64.ads
gcc/ada/system-darwin-ppc.ads
gcc/ada/system-darwin-x86.ads
gcc/ada/system-darwin-x86_64.ads
gcc/ada/system-freebsd-x86.ads
gcc/ada/system-freebsd-x86_64.ads
gcc/ada/system-hpux-ia64.ads
gcc/ada/system-hpux.ads
gcc/ada/system-linux-alpha.ads
gcc/ada/system-linux-armel.ads
gcc/ada/system-linux-hppa.ads
gcc/ada/system-linux-ia64.ads
gcc/ada/system-linux-ppc.ads
gcc/ada/system-linux-s390.ads
gcc/ada/system-linux-s390x.ads
gcc/ada/system-linux-sh4.ads
gcc/ada/system-linux-sparc.ads
gcc/ada/system-linux-x86.ads
gcc/ada/system-linux-x86_64.ads
gcc/ada/system-mingw-x86_64.ads
gcc/ada/system-mingw.ads
gcc/ada/system-solaris-sparc.ads
gcc/ada/system-solaris-sparcv9.ads
gcc/ada/system-solaris-x86.ads
gcc/ada/system-solaris-x86_64.ads
gcc/ada/system-vxworks-arm.ads
gcc/ada/system-vxworks-m68k.ads
gcc/ada/system-vxworks-mips.ads
gcc/ada/system-vxworks-ppc.ads
gcc/ada/system-vxworks-sparcv9.ads
gcc/ada/system-vxworks-x86.ads
gcc/ada/system.ads

index 36e8faf4d6e27a29bae485c273d0fa77b945fd5b..1826cea7121b340344d421ed4bb075b3e090fd43 100644 (file)
@@ -1,3 +1,34 @@
+2014-10-30  Ed Schonberg  <schonberg@adacore.com>
+
+       * exp_util.ads, exp_util.adb (Following_Address_Clause): Modify
+       Has_Following_Address_Clause so that it returns the address
+       clause if present, rather than a boolean value.
+       * sem_ch3.adb (Analyze_Object_Declaration): use
+       Following_Address_Clause.
+       * exp_ch3.adb (Expand_N_Object_Declaration): When a tagged object
+       is initialized, insert tag assignment after object is frozen,
+       which may be after an address clause that follows the declaration.
+
+2014-10-30  Tristan Gingold  <gingold@adacore.com>
+
+       * system-darwin-x86.ads, system-linux-s390x.ads, system-linux-alpha.ads,
+       system-vxworks-arm.ads, system-freebsd-x86_64.ads,
+       system-linux-hppa.ads, system-linux-s390.ads,
+       system-solaris-sparcv9.ads, system-mingw.ads, system-linux-ia64.ads,
+       system-vxworks-sparcv9.ads, system-linux-ppc.ads, system-aix64.ads,
+       system-linux-sh4.ads, system-solaris-x86.ads, system-linux-x86_64.ads,
+       system-linux-x86.ads, system-vxworks-ppc.ads, system-hpux.ads,
+       system-linux-armel.ads, system-darwin-ppc.ads, system-solaris-sparc.ads,
+       system-vxworks-m68k.ads, system-hpux-ia64.ads, system.ads,
+       system-solaris-x86_64.ads, system-mingw-x86_64.ads,
+       system-vxworks-mips.ads, system-linux-sparc.ads, system-freebsd-x86.ads,
+       system-aix.ads, system-darwin-x86_64.ads, system-vxworks-x86.ads: Add
+       pragma No_Elaboration_Code_All.
+
+2014-10-30  Eric Botcazou  <ebotcazou@adacore.com>
+
+       * gnat_ugn.texi: Minor improvement to -flto entry.
+
 2014-10-30  Hristian Kirtchev  <kirtchev@adacore.com>
 
        * sem_util.adb (Inherit_Subprogram_Contract):
index 2de1887af75716692cf18e2228bfaf1a9d46b758..5d544b89e1404c9d3ee52f3ddceb698766e77246 100644 (file)
@@ -5153,7 +5153,7 @@ package body Exp_Ch3 is
 
          elsif Needs_Simple_Initialization
                  (Typ, Initialize_Scalars
-                         and then not Has_Following_Address_Clause (N))
+                         and then No (Following_Address_Clause (N)))
            and then not Is_Internal (Def_Id)
            and then not Has_Init_Expression (N)
          then
@@ -5849,14 +5849,27 @@ package body Exp_Ch3 is
                                            Loc));
                   Set_Assignment_OK (New_Ref);
 
-                  Insert_Action_After (Init_After,
-                    Make_Assignment_Statement (Loc,
-                      Name       => New_Ref,
-                      Expression =>
-                        Unchecked_Convert_To (RTE (RE_Tag),
-                          New_Occurrence_Of
-                            (Node (First_Elmt (Access_Disp_Table (Full_Typ))),
-                             Loc))));
+                  --  Tag initialization cannot be done before object is
+                  --  frozen. If an address clause follows, make sure freeze
+                  --  node exists, and insert it and the tag assignment after
+                  --  the address clause.
+
+                  if Present (Following_Address_Clause (N)) then
+                     Init_After := Following_Address_Clause (N);
+                     Ensure_Freeze_Node (Def_Id);
+                  end if;
+
+                  Insert_Actions_After (Init_After,
+                    New_List (
+                      Freeze_Node (Def_Id),
+                      Make_Assignment_Statement (Loc,
+                        Name       => New_Ref,
+                        Expression =>
+                          Unchecked_Convert_To (RTE (RE_Tag),
+                            New_Occurrence_Of
+                              (Node
+                                (First_Elmt (Access_Disp_Table (Full_Typ))),
+                               Loc)))));
                end;
 
             --  Handle C++ constructor calls. Note that we do not check that
index b43731d30eb1a8e19b9119dc97abb5115cf67ef1..388807100dd5b63b2083a50681679d7793cbfd1c 100644 (file)
@@ -2912,6 +2912,37 @@ package body Exp_Util is
       end if;
    end Find_Hook_Context;
 
+   ------------------------------
+   -- Following_Address_Clause --
+   ------------------------------
+
+   --  Should this function check the private part in a package ???
+
+   function Following_Address_Clause (D : Node_Id) return Node_Id is
+      Id   : constant Entity_Id := Defining_Identifier (D);
+      Decl : Node_Id;
+
+   begin
+      Decl := Next (D);
+      while Present (Decl) loop
+         if Nkind (Decl) = N_At_Clause
+           and then Chars (Identifier (Decl)) = Chars (Id)
+         then
+            return Decl;
+
+         elsif Nkind (Decl) = N_Attribute_Definition_Clause
+           and then Chars (Decl) = Name_Address
+           and then Chars (Name (Decl)) = Chars (Id)
+         then
+            return Decl;
+         end if;
+
+         Next (Decl);
+      end loop;
+
+      return Empty;
+   end Following_Address_Clause;
+
    ----------------------
    -- Force_Evaluation --
    ----------------------
@@ -3519,37 +3550,6 @@ package body Exp_Util is
       return False;
    end Has_Annotate_Pragma_For_External_Axiomatization;
 
-   ----------------------------------
-   -- Has_Following_Address_Clause --
-   ----------------------------------
-
-   --  Should this function check the private part in a package ???
-
-   function Has_Following_Address_Clause (D : Node_Id) return Boolean is
-      Id   : constant Entity_Id := Defining_Identifier (D);
-      Decl : Node_Id;
-
-   begin
-      Decl := Next (D);
-      while Present (Decl) loop
-         if Nkind (Decl) = N_At_Clause
-           and then Chars (Identifier (Decl)) = Chars (Id)
-         then
-            return True;
-
-         elsif Nkind (Decl) = N_Attribute_Definition_Clause
-           and then Chars (Decl) = Name_Address
-           and then Chars (Name (Decl)) = Chars (Id)
-         then
-            return True;
-         end if;
-
-         Next (Decl);
-      end loop;
-
-      return False;
-   end Has_Following_Address_Clause;
-
    --------------------
    -- Homonym_Number --
    --------------------
index 770b23c2c03ad6b808ba8fc92ae0958df926ddf2..c0edb4b8e606d8ba74c40aa12ae5b0ee64230301 100644 (file)
@@ -502,6 +502,12 @@ package Exp_Util is
    --  be evaluated, for example if N is the right operand of a short circuit
    --  operator.
 
+   function Following_Address_Clause (D : Node_Id) return Node_Id;
+   --  D is the node for an object declaration. This function searches the
+   --  current declarative part to look for an address clause for the object
+   --  being declared, and returns the clause if one is found, returns
+   --  Empty otherwise.
+
    procedure Force_Evaluation
      (Exp      : Node_Id;
       Name_Req : Boolean := False);
@@ -569,11 +575,6 @@ package Exp_Util is
    --  pragmas at the start of the package declaration contains
    --    pragma Annotate (GNATprove, External_Axiomatization);
 
-   function Has_Following_Address_Clause (D : Node_Id) return Boolean;
-   --  D is the node for an object declaration. This function searches the
-   --  current declarative part to look for an address clause for the object
-   --  being declared, and returns True if one is found.
-
    function Homonym_Number (Subp : Entity_Id) return Nat;
    --  Here subp is the entity for a subprogram. This routine returns the
    --  homonym number used to disambiguate overloaded subprograms in the same
index 1290bf58e477065d4496bc19c3cdeaf8096935c3..573377fd14610e892c79a02d89aadfe49fcec57a 100644 (file)
@@ -3512,12 +3512,15 @@ defer most optimizations until the link stage. The advantage of this
 approach is that the compiler can do a whole-program analysis and choose
 the best interprocedural optimization strategy based on a complete view
 of the program, instead of a fragmentary view with the usual approach.
-This can also speed up the compilation of huge programs and reduce the
-size of the final executable, compared with a per-unit compilation with
-full inlining across modules enabled with the @option{-gnatn2} switch.
-The drawback of this approach is that it may require much more memory.
+This can also speed up the compilation of big programs and reduce the
+size of the executable when used in conjunction with the @option{-gnatn1}
+switch, compared with a traditional per-unit compilation with full
+inlining across modules enabled with the @option{-gnatn2} switch.
+The drawback of this approach is that it may require more memory and that
+the debugging information generated by -g with it might be hardly usable.
 The switch, as well as the accompanying @option{-Ox} switches, must be
-specified both for the compilation and the link phases.
+specified both for the compilation and the link phases; the recommended
+combination is @option{-O[23] -gnatn1 -flto[=n]} in most cases.
 If the @var{n} parameter is specified, the optimization and final code
 generation at link time are executed using @var{n} parallel jobs by
 means of an installed @command{make} program.
index bff1ac4713f3d5d8c5a5355baf3e0b6dd288fdf5..c9b86ba41ad37ba6cba65c72687c29ae2ce31b24 100644 (file)
@@ -3600,7 +3600,7 @@ package body Sem_Ch3 is
 
          if Comes_From_Source (N)
            and then Expander_Active
-           and then Has_Following_Address_Clause (N)
+           and then Present (Following_Address_Clause (N))
            and then Nkind (E) = N_Aggregate
          then
             Set_Etype (E, T);
index 19d65bdfcddb17319d1b6bd7cd5853cf1eca20ef..4a14f64bfdc9c4de822bf825157fe8aae2bf60cf 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                            (AIX/PPC Version)                             --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 568c24f2569730666159f3488787bfdfa05b412e..fd881bc4c5187e1c861ced0f6b15c38b36689c84 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                           (PPC/AIX64 Version)                            --
 --                                                                          --
---          Copyright (C) 2009-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 2009-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index d45ab4ee846c08c52f7a9bcb72fcb56285c073cd..c4fbbd8d3d4cb7fce3bd57a7f631180d97e3a0be 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (Darwin/PPC Version)                            --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 908cf50de153c4c7773c819ac89adaebf82e4912..cc27c56e5b213f2e0b5dda22fb51d0b183c67a68 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (Darwin/x86 Version)                            --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 0e5e8c027270708431ee22b6fa908a983e559c9c..054271ff0dcad03a8ff0e827daa92ad5c57d2eaa 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (Darwin/x86_64 Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 57bff62938b562811e76ea05420031c9e056f657..95f1daabcbe3aa80cba76c968ac7a45426fef50c 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (FreeBSD/x86 Version)                           --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index e99578d97f6ac991b08f14bd1ce486b8eef4450a..99c536391929fa134727e5b384f0239ee2255877 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (FreeBSD/x86_64 Version)                         --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index c1f2f94962b10e07c79a1afe7cba03b36605972e..2fb0f7816d59e379370ca26de9d84a5f72a7defa 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                           (HP-UX/ia64 Version)                           --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 47793e55f670f79510065ef9cc8979c4d31f2856..bc3052b41c6b6c112cc52e86faa9baf25cfd5d0c 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                             (HP-UX Version)                              --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 044ab3e1c5383b121b31896639aceeb2c03392c2..c364496fc5818f2f09b2ac311b060916ca0df7c4 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 36cccabfc4f66320319d387740e461daa403d463..768fdd4f89fa4b2fadcafa569614b8c7b69fc6c5 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 5ec908708bb8772ecb051af145a5772248b6a3e8..4d3b2af9bb7f3b21f4be36eb1874aa377aa53824 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                        (GNU/Linux-HPPA Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index c0cb6643c92fc87361fb652532e54c6bdd8db95b..c1a8ca18d2025b6bafcbd86e66cb70fe8796798a 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                        (GNU-Linux/ia64 Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index fac85a52fe5896c13a89901638d7c2bd55fb36b3..927bd85aa33ff00519264d0d512c3ed48cb9c3d1 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (GNU-Linux/PPC Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index e240d2e4864f8783638999eb76708459d257274a..1765a225ac8861ef92a51203b8b4409d94b10707 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 19d2180ffcc43f10b8618eef1698d0f24c163258..0e41be3ae36b1802a15d4e21b03e288f166df9e9 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 8ee07e374db60dffa797a73d7685c9762790b589..d3590a1ed256aaf95f18d36c0e4c9e28947d0673 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (GNU-Linux/sh4 Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 6fde138ea552114b239ac046f90cc8225db7e985..1ad20e2b07aca1081d966519a2b0282964893b62 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 270ed06cae697854b1a608fd7d37faeac679067b..8bcc2eab5d4ea10791a9cd7154f7c4a577d693b7 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (GNU-Linux/x86 Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 4c315d11cc04f34f95fb2371c1566b6facfdcb62..2874376f0029d6d9d84e4536efe9586da7dcf476 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                       (GNU-Linux/x86-64 Version)                         --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index b0b122216a8843ef5db5f63a42d1102595b48350..7b73968d10c2a91a6defde41e4de7cbcc60b39a1 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                            (Windows Version)                             --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index ad64a84dfcfe11a9986880df19c6217d9c89474e..84e4332eaa18da1b846777a6a1ca3ab720241526 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                            (Windows Version)                             --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index ac695c543fe32d217d84a0d385d00d01300a5503..768f4ca30cb60fc1948be04469c51fec1ea52969 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (SUN Solaris Version)                           --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index a7db8dfab5949aa17417178e16d5fec8b9c0a44e..5cfea64d3f53cf90a710421467dfa0ea75936b3f 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                        (Solaris Sparcv9 Version)                         --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 3987ea87ea15dbdf9a85a6ea77c79b4fafe01797..0235beae72ba26f4e49174a995ed8480bcc68413 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (x86 Solaris Version)                           --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index ed78923483f0c35049c416d392153f7a9ff611f8..94afe00ccf30ac06a94cea336f280846fb67ad4c 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                        (x86-64 Solaris Version)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 3b455d29ffc00708c96045127d44ae7af33b3108..c29485f7d091b87fdf63742426006375f18cb4a5 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index d747792a56ef5b307bf98ed9896856387a180985..8b9a661ec91e33374e6b4985d4c49511f453c09d 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                          (VxWorks version M68K)                          --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 47b46fa2f7d459fa207dd942385775d9beb8eb63..57dd4e70ffe031f882c295105695e4946fb336f6 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                         (VxWorks Version Mips)                           --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 94615777a0e19eb6ba0937994778e4f903b7df24..33e1e7edc359738d6c4b20ec70ff37e7179f58c5 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 96601676a24ebaa3187f759ec95b5f156a48580c..e81dafd43a6a3090aa863817dfd5478b0cd211dc 100644 (file)
@@ -7,7 +7,7 @@
 --                                 S p e c                                  --
 --                       (VxWorks Version Sparc/64)                         --
 --                                                                          --
---          Copyright (C) 1992-2012, Free Software Foundation, Inc.         --
+--          Copyright (C) 1992-2014, Free Software Foundation, Inc.         --
 --                                                                          --
 -- This specification is derived from the Ada Reference Manual for use with --
 -- GNAT. The copyright notice above, and the license provisions that follow --
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index c5ce5259870654caa206e8cee2ed3065e253b9b5..3b8a9c5076e20b1cc47c780386e41e0a91d0933f 100644 (file)
@@ -40,6 +40,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;
 
index 9206c1f685d507265c53505768c15c052f01d9d8..6dfb955592ac595717a628e14f4d3542fedadf34 100644 (file)
@@ -50,6 +50,9 @@ package System is
    --  this unit Pure instead of Preelaborable; see RM 13.7.1(15). In Ada
    --  2005, this is Pure in any case (AI-362).
 
+   pragma No_Elaboration_Code_All;
+   --  Allow the use of that restriction in units that WITH this unit
+
    type Name is (SYSTEM_NAME_GNAT);
    System_Name : constant Name := SYSTEM_NAME_GNAT;