[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Thu, 19 Jan 2017 13:13:19 +0000 (14:13 +0100)
committerArnaud Charlet <charlet@gcc.gnu.org>
Thu, 19 Jan 2017 13:13:19 +0000 (14:13 +0100)
2017-01-19  Javier Miranda  <miranda@adacore.com>

* ghost.adb (Propagate_Ignored_Ghost_Code): Protect access to the
identifier attribute of a block-statement node. Required to avoid
assertion failure when building the new containers library.

2017-01-19  Bob Duff  <duff@adacore.com>

* exp_ch3.adb: Update comment.

2017-01-19  Vincent Celier  <celier@adacore.com>

* gprep.adb (Gnatprep): Parse the definition file without
"replace in comments" even when switch -C is used.

From-SVN: r244633

gcc/ada/ChangeLog
gcc/ada/exp_ch3.adb
gcc/ada/ghost.adb
gcc/ada/gprep.adb

index 0b0888a9e7a619d0cdeadbc0281bd10b27c1eb95..4553f1c1e247d1368b0c4f5f62cbfa63f72b07f9 100644 (file)
@@ -1,3 +1,18 @@
+2017-01-19  Javier Miranda  <miranda@adacore.com>
+
+       * ghost.adb (Propagate_Ignored_Ghost_Code): Protect access to the
+       identifier attribute of a block-statement node. Required to avoid
+       assertion failure when building the new containers library.
+
+2017-01-19  Bob Duff  <duff@adacore.com>
+
+       * exp_ch3.adb: Update comment.
+
+2017-01-19  Vincent Celier  <celier@adacore.com>
+
+       * gprep.adb (Gnatprep): Parse the definition file without
+       "replace in comments" even when switch -C is used.
+
 2017-01-19  Justin Squirek  <squirek@adacore.com>
 
        * exp_ch9.adb (Is_Pure_Barrier): Create function
index 0acd94f1ab9c800a7ff63087fff75e61bb690a8d..4c34eb9dd6f7032c6fd306216ad803fb69a0fe8f 100644 (file)
@@ -5901,7 +5901,7 @@ package body Exp_Ch3 is
          --  would otherwise make two copies. The RM allows removing redunant
          --  Adjust/Finalize calls, but does not allow insertion of extra ones.
 
-         --  This part is disabled for now, because it breaks GPS builds
+         --  This part is disabled for now, because it breaks CodePeer runs
 
          return (False -- ???
              and then Nkind (Expr_Q) = N_Explicit_Dereference
index b55cff633dbf8dd180c835998bc51eaaf7345e1a..fadb89159a27ef755d25ca58f3130067395665cb 100644 (file)
@@ -1490,7 +1490,9 @@ package body Ghost is
       while Present (Nod) loop
          Scop := Empty;
 
-         if Nkind (Nod) = N_Block_Statement then
+         if Nkind (Nod) = N_Block_Statement
+           and then Present (Identifier (Nod))
+         then
             Scop := Entity (Identifier (Nod));
 
          elsif Nkind_In (Nod, N_Package_Body,
index 666d0ae2dcdf6096074a555bb307b46fab05fbd2..cc7e24301bbb9f059c112271c904dfe5040d555d 100644 (file)
@@ -253,7 +253,15 @@ package body GPrep is
 
             Scanner.Initialize_Scanner (Deffile);
 
-            Prep.Parse_Def_File;
+            --  Parse the definition file without "replace in comments"
+
+            declare
+               Replace : constant Boolean := Opt.Replace_In_Comments;
+            begin
+               Opt.Replace_In_Comments := False;
+               Prep.Parse_Def_File;
+               Opt.Replace_In_Comments := Replace;
+            end;
          end;
       end if;