aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2017-01-19 14:13:19 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2017-01-19 14:13:19 +0100
commit7c323fbe3bdff58d4081e4706d24c17f4bb36f8a (patch)
treebb3da6d076df7af45748014d6b0318c5b2013240
parent9849a7ea00a4af3f43a2c0df64484b7ae5a5f0e7 (diff)
downloadgcc-7c323fbe3bdff58d4081e4706d24c17f4bb36f8a.zip
gcc-7c323fbe3bdff58d4081e4706d24c17f4bb36f8a.tar.gz
gcc-7c323fbe3bdff58d4081e4706d24c17f4bb36f8a.tar.bz2
[multiple changes]
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
-rw-r--r--gcc/ada/ChangeLog15
-rw-r--r--gcc/ada/exp_ch3.adb2
-rw-r--r--gcc/ada/ghost.adb4
-rw-r--r--gcc/ada/gprep.adb10
4 files changed, 28 insertions, 3 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog
index 0b0888a..4553f1c 100644
--- a/gcc/ada/ChangeLog
+++ b/gcc/ada/ChangeLog
@@ -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
diff --git a/gcc/ada/exp_ch3.adb b/gcc/ada/exp_ch3.adb
index 0acd94f..4c34eb9 100644
--- a/gcc/ada/exp_ch3.adb
+++ b/gcc/ada/exp_ch3.adb
@@ -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
diff --git a/gcc/ada/ghost.adb b/gcc/ada/ghost.adb
index b55cff6..fadb891 100644
--- a/gcc/ada/ghost.adb
+++ b/gcc/ada/ghost.adb
@@ -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,
diff --git a/gcc/ada/gprep.adb b/gcc/ada/gprep.adb
index 666d0ae..cc7e243 100644
--- a/gcc/ada/gprep.adb
+++ b/gcc/ada/gprep.adb
@@ -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;