OSDN Git Service

2009-07-22 Ed Schonberg <schonberg@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Jul 2009 14:58:15 +0000 (14:58 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Jul 2009 14:58:15 +0000 (14:58 +0000)
* freeze.adb (Freeze_Entity): Do not generate extra formal for function
in initialization expression if function does not have convention Ada.

2009-07-22  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option
'--separate-label' to control label layout.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@149936 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/ChangeLog
gcc/ada/freeze.adb
gcc/ada/gnat_ugn.texi
gcc/ada/vms_data.ads

index 1c0d500..b75fad2 100644 (file)
@@ -1,3 +1,13 @@
+2009-07-22  Ed Schonberg  <schonberg@adacore.com>
+
+       * freeze.adb (Freeze_Entity): Do not generate extra formal for function
+       in initialization expression if function does not have convention Ada.
+
+2009-07-22  Sergey Rybin  <rybin@adacore.com>
+
+       * gnat_ugn.texi, vms_data.ads: Add qualifier for new gnatpp option
+       '--separate-label' to control label layout.
+
 2009-07-22  Robert Dewar  <dewar@adacore.com>
 
        * exp_tss.ads, sem_eval.adb: Minor reformatting
index d0c9718..b4cc4ed 100644 (file)
@@ -4125,7 +4125,8 @@ package body Freeze is
       --  is frozen, but a function call may appear in an initialization proc.
       --  before the declaration is frozen. We need to generate the extra
       --  formals, if any, to ensure that the expansion of the call includes
-      --  the proper actuals.
+      --  the proper actuals. This only applies to Ada subprograms, not to
+      --  imported ones.
 
       Desig_Typ := Empty;
 
@@ -4152,6 +4153,7 @@ package body Freeze is
             if Present (Nam)
               and then Ekind (Nam) = E_Function
               and then Nkind (Parent (N)) = N_Function_Call
+              and then Convention (Nam) = Convention_Ada
             then
                Create_Extra_Formals (Nam);
             end if;
index 24e7867..df99d91 100644 (file)
@@ -16316,6 +16316,10 @@ stops.
 Do not place the keyword @code{is} on a separate line in a subprogram body in
 case if the spec occupies more then one line.
 
+@cindex @option{^--separate-label^/SEPARATE_LABEL^} (@command{gnatpp})
+@item ^--separate-label^/SEPARATE_LABEL^
+Place the satemement label(s) and the statement itself on separate lines.
+
 @cindex @option{^--separate-loop-then^/SEPARATE_LOOP_THEN^} (@command{gnatpp})
 @item ^--separate-loop-then^/SEPARATE_LOOP_THEN^
 Place the keyword @code{loop} in FOR and WHILE loop statements and the
index eae2058..3e91774 100644 (file)
@@ -5755,6 +5755,12 @@ package VMS_Data is
    --   Do not place the IS keyword on a separate line in a subprogram body in
    --   case if the specification occupies more then one line.
 
+   S_Pretty_Sep_Label : aliased constant S := "/SEPARATE_LABEL "           &
+                                                    "--separate-label";
+   --        /SEPARATE_LABEL
+   --
+   --   Place statement label(s) and the statement itself on separate lines.
+
    S_Pretty_Sep_Loop_Then : aliased constant S := "/SEPARATE_LOOP_THEN "   &
                                                     "--separate-loop-then";
    --        /SEPARATE_LOOP_THEN
@@ -6141,6 +6147,7 @@ package VMS_Data is
                         S_Pretty_Project          'Access,
                         S_Pretty_RTS              'Access,
                         S_Pretty_Search           'Access,
+                        S_Pretty_Sep_Label        'Access,
                         S_Pretty_Sep_Loop_Then    'Access,
                         S_Pretty_N_Sep_Loop_Then  'Access,
                         S_Pretty_Subdirs          'Access,