aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sem_elab.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2015-05-12 17:00:49 +0200
committerArnaud Charlet <charlet@gcc.gnu.org>2015-05-12 17:00:49 +0200
commitc8d3b4ff3f469a3553c0e5d27b5d25dd03bf34e0 (patch)
treeaaa9b028bcb542cb164ac3d9379d1b02616ca275 /gcc/ada/sem_elab.adb
parent98b5dc6118b9298790e842075a86a9be832e79a4 (diff)
downloadgcc-c8d3b4ff3f469a3553c0e5d27b5d25dd03bf34e0.zip
gcc-c8d3b4ff3f469a3553c0e5d27b5d25dd03bf34e0.tar.gz
gcc-c8d3b4ff3f469a3553c0e5d27b5d25dd03bf34e0.tar.bz2
[multiple changes]
2015-05-12 Pierre-Marie de Rodat <derodat@adacore.com> * sem_ch10.adb (Sem_Ch10.Analyze_Proper_Body): Generate SCOs for subunit in generic units. 2015-05-12 Robert Dewar <dewar@adacore.com> * sem_elab.adb (Check_A_Call): Avoid checking internal call from Valid_Scalars 2015-05-12 Ed Schonberg <schonberg@adacore.com> * sem_ch6.adb (Process_Formals): An untagged incomplete type is legal in the profile of a null procedure. 2015-05-12 Ed Schonberg <schonberg@adacore.com> * sem_ch12.adb (Validate_Derived_Type_Instance): Handle properly the checks on a derived formal whose parent type is a previous formal that is not a derived type. 2015-05-12 Robert Dewar <dewar@adacore.com> * aspects.ads, aspects.adb: Add entries for aspect Volatile_Full_Access * einfo.adb (Has_Volatile_Full_Access): New flag. (Has_Volatile_Full_Access): New flag. * einfo.ads (Has_Volatile_Full_Access): New flag. * par-prag.adb: Add dummy entry for Volatile_Full_Access. * sem_prag.adb (Analyze_Pragma, case Volatile_Full_Access): Implement new pragma. * snames.ads-tmpl: Add entries for pragma Volatile_Full_Access. 2015-05-12 Robert Dewar <dewar@adacore.com> * targparm.ads: Minor reformatting. 2015-05-12 Robert Dewar <dewar@adacore.com> * a-reatim.adb (Time_Of): Properly detect overflow when TS = 0.0. * a-reatim.ads: Minor reformatting. From-SVN: r223074
Diffstat (limited to 'gcc/ada/sem_elab.adb')
-rw-r--r--gcc/ada/sem_elab.adb14
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/ada/sem_elab.adb b/gcc/ada/sem_elab.adb
index 227469a..9e514c1 100644
--- a/gcc/ada/sem_elab.adb
+++ b/gcc/ada/sem_elab.adb
@@ -6,7 +6,7 @@
-- --
-- B o d y --
-- --
--- Copyright (C) 1997-2014, Free Software Foundation, Inc. --
+-- Copyright (C) 1997-2015, Free Software Foundation, Inc. --
-- --
-- GNAT is free software; you can redistribute it and/or modify it under --
-- terms of the GNU General Public License as published by the Free Soft- --
@@ -619,6 +619,18 @@ package body Sem_Elab is
return;
end if;
+ -- If this is a rewrite of a Valid_Scalars attribute, then nothing to
+ -- check, we don't mind in this case if the call occurs before the body
+ -- since this is all generated code.
+
+ if Nkind (Original_Node (N)) = N_Attribute_Reference
+ and then Attribute_Name (Original_Node (N)) = Name_Valid_Scalars
+ then
+ return;
+ end if;
+
+ -- Proceed with check
+
Ent := E;
-- For a variable reference, just set Body_Acts_As_Spec to False