aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sinfo.ads
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2012-01-06 15:48:05 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2012-01-06 15:48:05 +0100
commit4913e24c20f58de96248db4bb8506c8b2678d799 (patch)
tree14b273463371d190969b1946bbd551ae4fc4f537 /gcc/ada/sinfo.ads
parent86d71fcabfba7a1f288ea6b90e7228705d6f5b99 (diff)
downloadgcc-4913e24c20f58de96248db4bb8506c8b2678d799.zip
gcc-4913e24c20f58de96248db4bb8506c8b2678d799.tar.gz
gcc-4913e24c20f58de96248db4bb8506c8b2678d799.tar.bz2
[multiple changes]
2012-01-06 Robert Dewar <dewar@adacore.com> * a-wichha.ads, a-wichun.ads, a-zchhan.ads, a-zchuni.ads, s-utf_32.ads: Add pragma Pure * s-utf_32.adb: Suppress warnings on non-static constants (now that this is Pure). 2012-01-06 Bob Duff <duff@adacore.com> * s-rpc.ads (Read, Write): Add overriding indicators. 2012-01-06 Robert Dewar <dewar@adacore.com> * gnat_rm.texi: Add documentation for conventions Ada_Pass_By_Copy and Ada_Pass_By_Reference. 2012-01-06 Gary Dismukes <dismukes@adacore.com> * a-tienio.adb (Put): Add exception message on raise statements. Remove unneeded blocks and object declarations. 2012-01-06 Robert Dewar <dewar@adacore.com> * sem_prag.adb: Minor reformatting. 2012-01-06 Ed Schonberg <schonberg@adacore.com> * sinfo.ads, sinfo.adb (Has_Prefixed_Call): New flag to indicate that a selected component within a generic unit has been resolved as a prefixed call with local references. * sem_ch3.adb (Is_Visible_Component): In an instance body a selected component is always visible. * sem_ch4.adb (Analyze_Selected_Component): If the node is a prefixed call in an instance, do not look for visible components of the type. * sem_ch12.adb (Reset_Entity): If a selected component has resolved to a prefixed call, mark the node accordingly when prefix and selector are local references. From-SVN: r182954
Diffstat (limited to 'gcc/ada/sinfo.ads')
-rw-r--r--gcc/ada/sinfo.ads15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/ada/sinfo.ads b/gcc/ada/sinfo.ads
index ce4a31c..3d1809b 100644
--- a/gcc/ada/sinfo.ads
+++ b/gcc/ada/sinfo.ads
@@ -1335,6 +1335,12 @@ package Sinfo is
-- conditions holds, and the flag is set, then the division or
-- multiplication can be (and is) converted to a shift.
+ -- Is_Prefixed_Call (Flag17-Sem)
+ -- This flag is set in a selected component within a generic unit, if
+ -- it resolves to a prefixed call to a primitive operation. The flag
+ -- is used to prevent accidental overloadings in an instance, when a
+ -- primitive operation and a private record component may be homographs.
+
-- Is_Protected_Subprogram_Body (Flag7-Sem)
-- A flag set in a Subprogram_Body block to indicate that it is the
-- implementation of a protected subprogram. Such a body needs cleanup
@@ -3249,6 +3255,7 @@ package Sinfo is
-- Associated_Node (Node4-Sem)
-- Do_Discriminant_Check (Flag13-Sem)
-- Is_In_Discriminant_Check (Flag11-Sem)
+ -- Is_Prefixed_Call (Flag17-Sem)
-- Atomic_Sync_Required (Flag14-Sem)
-- plus fields for expression
@@ -8653,6 +8660,9 @@ package Sinfo is
function Is_Power_Of_2_For_Shift
(N : Node_Id) return Boolean; -- Flag13
+ function Is_Prefixed_Call
+ (N : Node_Id) return Boolean; -- Flag17
+
function Is_Protected_Subprogram_Body
(N : Node_Id) return Boolean; -- Flag7
@@ -9631,6 +9641,9 @@ package Sinfo is
procedure Set_Is_Power_Of_2_For_Shift
(N : Node_Id; Val : Boolean := True); -- Flag13
+ procedure Set_Is_Prefixed_Call
+ (N : Node_Id; Val : Boolean := True); -- Flag17
+
procedure Set_Is_Protected_Subprogram_Body
(N : Node_Id; Val : Boolean := True); -- Flag7
@@ -11971,6 +11984,7 @@ package Sinfo is
pragma Inline (Is_Null_Loop);
pragma Inline (Is_Overloaded);
pragma Inline (Is_Power_Of_2_For_Shift);
+ pragma Inline (Is_Prefixed_Call);
pragma Inline (Is_Protected_Subprogram_Body);
pragma Inline (Is_Static_Coextension);
pragma Inline (Is_Static_Expression);
@@ -12293,6 +12307,7 @@ package Sinfo is
pragma Inline (Set_Is_Null_Loop);
pragma Inline (Set_Is_Overloaded);
pragma Inline (Set_Is_Power_Of_2_For_Shift);
+ pragma Inline (Set_Is_Prefixed_Call);
pragma Inline (Set_Is_Protected_Subprogram_Body);
pragma Inline (Set_Has_Self_Reference);
pragma Inline (Set_Is_Static_Coextension);