aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/frontend.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-01-06 09:57:50 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2015-01-06 09:57:50 +0100
commitde4ac03852177548570b23729e2dd086737d4404 (patch)
treed1be37fa9f20698c01022cd5537bb9c6d2c28d10 /gcc/ada/frontend.adb
parentd3d514a953f10b9baaef8c7007448b828ab99513 (diff)
downloadgcc-de4ac03852177548570b23729e2dd086737d4404.zip
gcc-de4ac03852177548570b23729e2dd086737d4404.tar.gz
gcc-de4ac03852177548570b23729e2dd086737d4404.tar.bz2
[multiple changes]
2015-01-06 Robert Dewar <dewar@adacore.com> * s-taskin.ads, s-traces.ads: Minor reformatting. * exp_util.adb: Minor typo fix. 2015-01-06 Vincent Celier <celier@adacore.com> * gnatls.adb (Search_RTS): Invoke Initialize_Default_Project_Path with the runtime name. * prj-env.adb (Initialize_Default_Project_Path): When both Target_Name and Runtime_Name are not empty string, add to the project path the two directories .../lib/gnat and .../share/gpr related to the runtime. * prj-env.ads (Initialize_Default_Project_Path): New String parameter Runtime_Name, defaulted to the empty string. 2015-01-06 Hristian Kirtchev <kirtchev@adacore.com> * frontend.adb: Guard against the case where a configuration pragma may be split into multiple pragmas and the original rewritten as a null statement. * sem_prag.adb (Analyze_Pragma): Insert a brand new Check_Policy pragma using Insert_Before rather than Insert_Action. This takes care of the configuration pragma case where Insert_Action would fail. 2015-01-06 Bob Duff <duff@adacore.com> * a-coboho.ads (Element_Access): Add "pragma No_Strict_Aliasing (Element_Access);". This is needed because we are unchecked-converting from Address to Element_Access. * a-cofove.ads, a-cofove.adb (Elems,Elemsc): Fix bounds of the result to be 1. 2015-01-06 Hristian Kirtchev <kirtchev@adacore.com> * sem_res.adb (Resolve_Actuals): Remove the restriction which prohibits volatile actual parameters with enabled external propery Async_Writers to act appear in procedure calls where the corresponding formal is of mode OUT. From-SVN: r219222
Diffstat (limited to 'gcc/ada/frontend.adb')
-rw-r--r--gcc/ada/frontend.adb17
1 files changed, 12 insertions, 5 deletions
diff --git a/gcc/ada/frontend.adb b/gcc/ada/frontend.adb
index 5cea4db..7d24ae0 100644
--- a/gcc/ada/frontend.adb
+++ b/gcc/ada/frontend.adb
@@ -339,10 +339,10 @@ begin
and then not Fatal_Error (Main_Unit)
then
- -- Pragmas that require some semantic activity, such as
- -- Interrupt_State, cannot be processed until the main unit
- -- is installed, because they require a compilation unit on
- -- which to attach with_clauses, etc. So analyze them now.
+ -- Pragmas that require some semantic activity, such as Interrupt_State,
+ -- cannot be processed until the main unit is installed, because they
+ -- require a compilation unit on which to attach with_clauses, etc. So
+ -- analyze them now.
declare
Prag : Node_Id;
@@ -350,7 +350,14 @@ begin
begin
Prag := First (Config_Pragmas);
while Present (Prag) loop
- if Delay_Config_Pragma_Analyze (Prag) then
+
+ -- Guard against the case where a configuration pragma may be
+ -- split into multiple pragmas and the original rewritten as a
+ -- null statement.
+
+ if Nkind (Prag) = N_Pragma
+ and then Delay_Config_Pragma_Analyze (Prag)
+ then
Analyze_Pragma (Prag);
end if;