comparison gcc/ada/sinfo.ads @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 84e7813d76e9
children
comparison
equal deleted inserted replaced
131:84e7813d76e9 145:1830386684a0
4 -- -- 4 -- --
5 -- S I N F O -- 5 -- S I N F O --
6 -- -- 6 -- --
7 -- S p e c -- 7 -- S p e c --
8 -- -- 8 -- --
9 -- Copyright (C) 1992-2018, Free Software Foundation, Inc. -- 9 -- Copyright (C) 1992-2019, Free Software Foundation, Inc. --
10 -- -- 10 -- --
11 -- GNAT is free software; you can redistribute it and/or modify it under -- 11 -- GNAT is free software; you can redistribute it and/or modify it under --
12 -- terms of the GNU General Public License as published by the Free Soft- -- 12 -- terms of the GNU General Public License as published by the Free Soft- --
13 -- ware Foundation; either version 3, or (at your option) any later ver- -- 13 -- ware Foundation; either version 3, or (at your option) any later ver- --
14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- -- 14 -- sion. GNAT is distributed in the hope that it will be useful, but WITH- --
752 -- check. The front end then inserts or not the check during expansion. In 752 -- check. The front end then inserts or not the check during expansion. In
753 -- particular, these flags should also be correctly set in ASIS mode and 753 -- particular, these flags should also be correctly set in ASIS mode and
754 -- GNATprove mode. As a special case, the front end does not insert a 754 -- GNATprove mode. As a special case, the front end does not insert a
755 -- Do_Division_Check flag on float exponentiation expressions, for the case 755 -- Do_Division_Check flag on float exponentiation expressions, for the case
756 -- where the value is 0.0 and the exponent is negative, although this case 756 -- where the value is 0.0 and the exponent is negative, although this case
757 -- does lead to a division check failure. 757 -- does lead to a division check failure. As another special case,
758 758 -- the front end does not insert a Do_Range_Check on an allocator where
759 -- Note: the expander always takes care of the Do_Range check case, 759 -- the designated type is scalar, and the designated type is more
760 -- so this flag will never be set in the expanded tree passed to the 760 -- constrained than the type of the initialized allocator value or the type
761 -- back end code generator. 761 -- of the default value for an uninitialized allocator.
762
763 -- Note that the expander always takes care of the Do_Range_Check case, so
764 -- this flag will never be set in the expanded tree passed to the back end.
765 -- For the other two flags, the check can be generated either by the back
766 -- end or by the front end, depending on the setting of a target parameter.
762 767
763 -- Note that this accounts for all nodes that trigger the corresponding 768 -- Note that this accounts for all nodes that trigger the corresponding
764 -- checks, except for range checks on subtype_indications, which may be 769 -- checks, except for range checks on subtype_indications, which may be
765 -- required to check that a range_constraint is compatible with the given 770 -- required to check that a range_constraint is compatible with the given
766 -- subtype (RM 3.2.2(11)). 771 -- subtype (RM 3.2.2(11)).
925 -- Present in an N_Others_Choice node. This flag is set for an others 930 -- Present in an N_Others_Choice node. This flag is set for an others
926 -- exception where all exceptions are to be caught, even those that are 931 -- exception where all exceptions are to be caught, even those that are
927 -- not normally handled (in particular the tasking abort signal). This 932 -- not normally handled (in particular the tasking abort signal). This
928 -- is used for translation of the at end handler into a normal exception 933 -- is used for translation of the at end handler into a normal exception
929 -- handler. 934 -- handler.
935
936 -- Aspect_On_Partial_View (Flag18)
937 -- Present on an N_Aspect_Specification node. For an aspect that applies
938 -- to a type entity, indicates whether the specification appears on the
939 -- partial view of a private type or extension. Undefined for aspects
940 -- that apply to other entities.
930 941
931 -- Aspect_Rep_Item (Node2-Sem) 942 -- Aspect_Rep_Item (Node2-Sem)
932 -- Present in N_Aspect_Specification nodes. Points to the corresponding 943 -- Present in N_Aspect_Specification nodes. Points to the corresponding
933 -- pragma/attribute definition node used to process the aspect. 944 -- pragma/attribute definition node used to process the aspect.
934 945
1104 -- to such a formal association. 1115 -- to such a formal association.
1105 1116
1106 -- Corresponding_Generic_Association (Node5-Sem) 1117 -- Corresponding_Generic_Association (Node5-Sem)
1107 -- This field is defined for object declarations and object renaming 1118 -- This field is defined for object declarations and object renaming
1108 -- declarations. It is set for the declarations within an instance that 1119 -- declarations. It is set for the declarations within an instance that
1109 -- map generic formals to their actuals. If set, the field points to 1120 -- map generic formals to their actuals. If set, the field points either
1110 -- a generic_association which is the original parent of the expression 1121 -- to a copy of a default expression for an actual of mode IN or to a
1111 -- or name appearing in the declaration. This simplifies ASIS queries. 1122 -- generic_association which is the original parent of the expression or
1123 -- name appearing in the declaration. This simplifies ASIS and GNATprove
1124 -- queries.
1112 1125
1113 -- Corresponding_Integer_Value (Uint4-Sem) 1126 -- Corresponding_Integer_Value (Uint4-Sem)
1114 -- This field is set in real literals of fixed-point types (it is not 1127 -- This field is set in real literals of fixed-point types (it is not
1115 -- used for floating-point types). It contains the integer value used 1128 -- used for floating-point types). It contains the integer value used
1116 -- to represent the fixed-point value. It is also set on the universal 1129 -- to represent the fixed-point value. It is also set on the universal
1178 -- generate a check. This flag is also present in assignment statements 1191 -- generate a check. This flag is also present in assignment statements
1179 -- (and set if the assignment requires a discriminant check), and in type 1192 -- (and set if the assignment requires a discriminant check), and in type
1180 -- conversion nodes (and set if the conversion requires a check). 1193 -- conversion nodes (and set if the conversion requires a check).
1181 1194
1182 -- Do_Division_Check (Flag13-Sem) 1195 -- Do_Division_Check (Flag13-Sem)
1183 -- This flag is set on a division operator (/ mod rem) to indicate 1196 -- This flag is set on a division operator (/ mod rem) to indicate that
1184 -- that a zero divide check is required. The actual check is dealt 1197 -- a zero divide check is required. The actual check is either dealt with
1185 -- with by the backend (all the front end does is to set the flag). 1198 -- by the back end if Backend_Divide_Checks is set to true, or by the
1199 -- front end itself if it is set to false.
1186 1200
1187 -- Do_Length_Check (Flag4-Sem) 1201 -- Do_Length_Check (Flag4-Sem)
1188 -- This flag is set in an N_Assignment_Statement, N_Op_And, N_Op_Or, 1202 -- This flag is set in an N_Assignment_Statement, N_Op_And, N_Op_Or,
1189 -- N_Op_Xor, or N_Type_Conversion node to indicate that a length check 1203 -- N_Op_Xor, or N_Type_Conversion node to indicate that a length check
1190 -- is required. It is not determined who deals with this flag (???). 1204 -- is required. It is not determined who deals with this flag (???).
1191 1205
1192 -- Do_Overflow_Check (Flag17-Sem) 1206 -- Do_Overflow_Check (Flag17-Sem)
1193 -- This flag is set on an operator where an overflow check is required on 1207 -- This flag is set on an operator where an overflow check is required on
1194 -- the operation. The actual check is dealt with by the backend (all the 1208 -- the operation. The actual check is either dealt with by the back end
1195 -- front end does is to set the flag). The other cases where this flag is 1209 -- if Backend_Overflow_Checks is set to true, or by the front end itself
1196 -- used is on a Type_Conversion node and for attribute reference nodes. 1210 -- if it is set to false. The other cases where this flag is used is on a
1211 -- Type_Conversion node as well on if and case expression nodes.
1197 -- For a type conversion, it means that the conversion is from one base 1212 -- For a type conversion, it means that the conversion is from one base
1198 -- type to another, and the value may not fit in the target base type. 1213 -- type to another, and the value may not fit in the target base type.
1199 -- See also the description of Do_Range_Check for this case. The only 1214 -- See also the description of Do_Range_Check for this case. This flag is
1200 -- attribute references which use this flag are Pred and Succ, where it
1201 -- means that the result should be checked for going outside the base
1202 -- range. Note that this flag is not set for modular types. This flag is
1203 -- also set on if and case expression nodes if we are operating in either 1215 -- also set on if and case expression nodes if we are operating in either
1204 -- MINIMIZED or ELIMINATED overflow checking mode (to make sure that we 1216 -- MINIMIZED or ELIMINATED overflow checking mode (to make sure that we
1205 -- properly process overflow checking for dependent expressions). 1217 -- properly process overflow checking for dependent expressions).
1206 1218
1207 -- Do_Range_Check (Flag9-Sem) 1219 -- Do_Range_Check (Flag9-Sem)
1208 -- This flag is set on an expression which appears in a context where a 1220 -- This flag is set on an expression which appears in a context where a
1209 -- range check is required. The target type is clear from the context. 1221 -- range check is required. The target type is clear from the context.
1210 -- The contexts in which this flag can appear are the following: 1222 -- The contexts in which this flag can appear are the following:
1211 1223
1212 -- Right side of an assignment. In this case the target type is 1224 -- Right side of an assignment. In this case the target type is taken
1213 -- taken from the left side of the assignment, which is referenced 1225 -- from the left side of the assignment, which is referenced by the
1214 -- by the Name of the N_Assignment_Statement node. 1226 -- Name of the N_Assignment_Statement node.
1215 1227
1216 -- Subscript expressions in an indexed component. In this case the 1228 -- Subscript expressions in an indexed component. In this case the
1217 -- target type is determined from the type of the array, which is 1229 -- target type is determined from the type of the array, which is
1218 -- referenced by the Prefix of the N_Indexed_Component node. 1230 -- referenced by the Prefix of the N_Indexed_Component node.
1219 1231
1242 -- type), satisfies the range constraint of the target type. 1254 -- type), satisfies the range constraint of the target type.
1243 1255
1244 -- Note: when a range check is required in contexts other than those 1256 -- Note: when a range check is required in contexts other than those
1245 -- listed above (e.g. in a return statement), an additional type 1257 -- listed above (e.g. in a return statement), an additional type
1246 -- conversion node is introduced to represent the required check. 1258 -- conversion node is introduced to represent the required check.
1247
1248 -- A special case arises for the arguments of the Pred/Succ attributes.
1249 -- Here the range check needed is against First + 1 .. Last (Pred) or
1250 -- First .. Last - 1 (Succ) of the corresponding base type. Essentially
1251 -- these checks are what would be performed within the implicit body of
1252 -- the functions that correspond to these attributes. In these cases,
1253 -- the Do_Range check flag is set on the argument to the attribute
1254 -- function, and the back end must special case the appropriate range
1255 -- to check against.
1256 1259
1257 -- Do_Storage_Check (Flag17-Sem) 1260 -- Do_Storage_Check (Flag17-Sem)
1258 -- This flag is set in an N_Allocator node to indicate that a storage 1261 -- This flag is set in an N_Allocator node to indicate that a storage
1259 -- check is required for the allocation, or in an N_Subprogram_Body node 1262 -- check is required for the allocation, or in an N_Subprogram_Body node
1260 -- to indicate that a stack check is required in the subprogram prologue. 1263 -- to indicate that a stack check is required in the subprogram prologue.
1758 -- identifier 1761 -- identifier
1759 -- package instantiation 1762 -- package instantiation
1760 -- procedure call statement 1763 -- procedure call statement
1761 -- procedure instantiation 1764 -- procedure instantiation
1762 -- requeue statement 1765 -- requeue statement
1766 -- variable reference marker
1763 -- 1767 --
1764 -- Set when the node appears within a context which allows the generation 1768 -- Set when the node appears within a context which allows the generation
1765 -- of run-time ABE checks. This flag detemines whether the ABE Processing 1769 -- of run-time ABE checks. This flag detemines whether the ABE Processing
1766 -- phase generates conditional ABE checks and guaranteed ABE failures. 1770 -- phase generates conditional ABE checks and guaranteed ABE failures.
1767 1771
1774 -- Present in the following nodes: 1778 -- Present in the following nodes:
1775 -- 1779 --
1776 -- attribute reference 1780 -- attribute reference
1777 -- call marker 1781 -- call marker
1778 -- entry call statement 1782 -- entry call statement
1783 -- expanded name
1779 -- function call 1784 -- function call
1780 -- function instantiation 1785 -- function instantiation
1786 -- identifier
1781 -- package instantiation 1787 -- package instantiation
1782 -- procedure call statement 1788 -- procedure call statement
1783 -- procedure instantiation 1789 -- procedure instantiation
1784 -- requeue statement 1790 -- requeue statement
1791 -- variable reference marker
1785 -- 1792 --
1786 -- Set when the node appears within a context where elaboration warnings 1793 -- Set when the node appears within a context where elaboration warnings
1787 -- are enabled. This flag determines whether the ABE processing phase 1794 -- are enabled. This flag determines whether the ABE processing phase
1788 -- generates diagnostics on various elaboration issues. 1795 -- generates diagnostics on various elaboration issues.
1789 1796
1828 -- Refined_Global 1835 -- Refined_Global
1829 -- Refined_Post 1836 -- Refined_Post
1830 -- Refined_State 1837 -- Refined_State
1831 -- Test_Case 1838 -- Test_Case
1832 1839
1840 -- Is_Homogeneous_Aggregate (Flag14)
1841 -- A flag set on an Ada2020 aggregate that uses square brackets as
1842 -- delimiters, and thus denotes an array or container aggregate, or
1843 -- the prefix of a reduction attribute.
1844
1833 -- Is_Ignored (Flag9-Sem) 1845 -- Is_Ignored (Flag9-Sem)
1834 -- A flag set in an N_Aspect_Specification or N_Pragma node if there was 1846 -- A flag set in an N_Aspect_Specification or N_Pragma node if there was
1835 -- a Check_Policy or Assertion_Policy (or in the case of a Debug_Pragma) 1847 -- a Check_Policy or Assertion_Policy (or in the case of a Debug_Pragma)
1836 -- a Debug_Policy pragma that specified a policy of IGNORE, DISABLE, or 1848 -- a Debug_Policy pragma that specified a policy of IGNORE, DISABLE, or
1837 -- OFF, for the pragma/aspect. If there was a Policy pragma specifying 1849 -- OFF, for the pragma/aspect. If there was a Policy pragma specifying
1937 -- Present in N_Qualified_Expression nodes. Set when the qualification is 1949 -- Present in N_Qualified_Expression nodes. Set when the qualification is
1938 -- converting a universal literal to a specific type. Such qualifiers aid 1950 -- converting a universal literal to a specific type. Such qualifiers aid
1939 -- the resolution of accidental overloading of binary or unary operators 1951 -- the resolution of accidental overloading of binary or unary operators
1940 -- which may occur in instances. 1952 -- which may occur in instances.
1941 1953
1942 -- Is_Read (Flag1-Sem) 1954 -- Is_Read (Flag4-Sem)
1943 -- Present in variable reference markers. Set when the original variable 1955 -- Present in variable reference markers. Set when the original variable
1944 -- reference constitues a read of the variable. 1956 -- reference constitues a read of the variable.
1945 1957
1946 -- Is_Source_Call (Flag4-Sem) 1958 -- Is_Source_Call (Flag4-Sem)
1947 -- Present in call marker nodes. Set when the related call came from 1959 -- Present in call marker nodes. Set when the related call came from
1948 -- source. 1960 -- source.
1949 1961
1950 -- Is_SPARK_Mode_On_Node (Flag2-Sem) 1962 -- Is_SPARK_Mode_On_Node (Flag2-Sem)
1951 -- Present in nodes which represent an elaboration scenario. Those are 1963 -- Present in the following nodes:
1952 -- assignment statement, attribute reference, call marker, entry call 1964 --
1953 -- statement, expanded name, function call, identifier, instantiation, 1965 -- assignment statement
1954 -- procedure call statement, and requeue statement nodes. Set when the 1966 -- attribute reference
1955 -- node appears within a context subject to SPARK_Mode On. This flag 1967 -- call marker
1956 -- determines when the SPARK model of elaboration be activated by the 1968 -- entry call statement
1957 -- ABE Processing phase. 1969 -- expanded name
1970 -- function call
1971 -- function instantiation
1972 -- identifier
1973 -- package instantiation
1974 -- procedure call statement
1975 -- procedure instantiation
1976 -- requeue statement
1977 -- variable reference marker
1978 --
1979 -- Set when the node appears within a context subject to SPARK_Mode On.
1980 -- This flag determines when the SPARK model of elaboration be activated
1981 -- by the ABE Processing phase.
1958 1982
1959 -- Is_Static_Coextension (Flag14-Sem) 1983 -- Is_Static_Coextension (Flag14-Sem)
1960 -- Present in N_Allocator nodes. Set if the allocator is a coextension 1984 -- Present in N_Allocator nodes. Set if the allocator is a coextension
1961 -- of an object allocated on the stack rather than the heap. The partner 1985 -- of an object allocated on the stack rather than the heap. The partner
1962 -- flag Is_Dynamic_Coextension must be cleared before setting this flag 1986 -- flag Is_Dynamic_Coextension must be cleared before setting this flag
1963 -- to True. 1987 -- to True.
1964 1988
1965 -- Is_Static_Expression (Flag6-Sem) 1989 -- Is_Static_Expression (Flag6-Sem)
1966 -- Indicates that an expression is a static expression according to the 1990 -- Indicates that an expression is a static expression according to the
1967 -- rules in (RM 4.9). Note that it is possible for this flag to be set 1991 -- rules in RM-4.9. See Sem_Eval for details.
1968 -- when Raises_Constraint_Error is also set. In practice almost all cases
1969 -- where a static expression is required do not allow an expression which
1970 -- raises Constraint_Error, so almost always, callers should call the
1971 -- Is_Ok_Static_Expression routine instead of testing this flag. See
1972 -- spec of package Sem_Eval for full details on the use of this flag.
1973 1992
1974 -- Is_Subprogram_Descriptor (Flag16-Sem) 1993 -- Is_Subprogram_Descriptor (Flag16-Sem)
1975 -- Present in N_Object_Declaration, and set only for the object 1994 -- Present in N_Object_Declaration, and set only for the object
1976 -- declaration generated for a subprogram descriptor in fast exception 1995 -- declaration generated for a subprogram descriptor in fast exception
1977 -- mode. See Exp_Ch11 for details of use. 1996 -- mode. See Exp_Ch11 for details of use.
1990 -- Is_Task_Master (Flag5-Sem) 2009 -- Is_Task_Master (Flag5-Sem)
1991 -- A flag set in a Subprogram_Body, Block_Statement, or Task_Body node to 2010 -- A flag set in a Subprogram_Body, Block_Statement, or Task_Body node to
1992 -- indicate that the construct is a task master (i.e. has declared tasks 2011 -- indicate that the construct is a task master (i.e. has declared tasks
1993 -- or declares an access to a task type). 2012 -- or declares an access to a task type).
1994 2013
1995 -- Is_Write (Flag2-Sem) 2014 -- Is_Write (Flag5-Sem)
1996 -- Present in variable reference markers. Set when the original variable 2015 -- Present in variable reference markers. Set when the original variable
1997 -- reference constitues a write of the variable. 2016 -- reference constitues a write of the variable.
1998 2017
1999 -- Itype (Node1-Sem) 2018 -- Itype (Node1-Sem)
2000 -- Used in N_Itype_Reference node to reference an itype for which it is 2019 -- Used in N_Itype_Reference node to reference an itype for which it is
2293 -- allocating the return value), and for the Deallocate procedure in the 2312 -- allocating the return value), and for the Deallocate procedure in the
2294 -- case of N_Free_Statement. 2313 -- case of N_Free_Statement.
2295 2314
2296 -- Raises_Constraint_Error (Flag7-Sem) 2315 -- Raises_Constraint_Error (Flag7-Sem)
2297 -- Set on an expression whose evaluation will definitely fail constraint 2316 -- Set on an expression whose evaluation will definitely fail constraint
2298 -- error check. In the case of static expressions, this flag must be set 2317 -- error check. See Sem_Eval for details.
2299 -- accurately (and if it is set, the expression is typically illegal
2300 -- unless it appears as a non-elaborated branch of a short-circuit form).
2301 -- For a non-static expression, this flag may be set whenever an
2302 -- expression (e.g. an aggregate) is known to raise constraint error. If
2303 -- set, the expression definitely will raise CE if elaborated at runtime.
2304 -- If not set, the expression may or may not raise CE. In other words, on
2305 -- static expressions, the flag is set accurately, on non-static
2306 -- expressions it is set conservatively.
2307 2318
2308 -- Redundant_Use (Flag13-Sem) 2319 -- Redundant_Use (Flag13-Sem)
2309 -- Present in nodes that can appear as an operand in a use clause or use 2320 -- Present in nodes that can appear as an operand in a use clause or use
2310 -- type clause (identifiers, expanded names, attribute references). Set 2321 -- type clause (identifiers, expanded names, attribute references). Set
2311 -- to indicate that a use is redundant (and therefore need not be undone 2322 -- to indicate that a use is redundant (and therefore need not be undone
2325 2336
2326 -- Return_Object_Declarations (List3) 2337 -- Return_Object_Declarations (List3)
2327 -- Present in N_Extended_Return_Statement. Points to a list initially 2338 -- Present in N_Extended_Return_Statement. Points to a list initially
2328 -- containing a single N_Object_Declaration representing the return 2339 -- containing a single N_Object_Declaration representing the return
2329 -- object. We use a list (instead of just a pointer to the object decl) 2340 -- object. We use a list (instead of just a pointer to the object decl)
2330 -- because Analyze wants to insert extra actions on this list. 2341 -- because Analyze wants to insert extra actions on this list, before the
2342 -- N_Object_Declaration, which always remains last on the list.
2331 2343
2332 -- Rounded_Result (Flag18-Sem) 2344 -- Rounded_Result (Flag18-Sem)
2333 -- Present in N_Type_Conversion, N_Op_Divide, and N_Op_Multiply nodes. 2345 -- Present in N_Type_Conversion, N_Op_Divide, and N_Op_Multiply nodes.
2334 -- Used in the fixed-point cases to indicate that the result must be 2346 -- Used in the fixed-point cases to indicate that the result must be
2335 -- rounded as a result of the use of the 'Round attribute. Also used for 2347 -- rounded as a result of the use of the 'Round attribute. Also used for
2337 -- rounded to the nearest integer (breaking ties away from zero), rather 2349 -- rounded to the nearest integer (breaking ties away from zero), rather
2338 -- than truncated towards zero as usual. These rounded integer operations 2350 -- than truncated towards zero as usual. These rounded integer operations
2339 -- are the result of expansion of rounded fixed-point divide, conversion 2351 -- are the result of expansion of rounded fixed-point divide, conversion
2340 -- and multiplication operations. 2352 -- and multiplication operations.
2341 2353
2354 -- Save_Invocation_Graph_Of_Body (Flag1-Sem)
2355 -- Present in compilation unit nodes. Set when the elaboration mechanism
2356 -- must record all invocation constructs and invocation relations within
2357 -- the body of the compilation unit.
2358 --
2342 -- SCIL_Entity (Node4-Sem) 2359 -- SCIL_Entity (Node4-Sem)
2343 -- Present in SCIL nodes. References the specific tagged type associated 2360 -- Present in SCIL nodes. References the specific tagged type associated
2344 -- with the SCIL node (for an N_SCIL_Dispatching_Call node, this is 2361 -- with the SCIL node (for an N_SCIL_Dispatching_Call node, this is
2345 -- the controlling type of the call; for an N_SCIL_Membership_Test node 2362 -- the controlling type of the call; for an N_SCIL_Membership_Test node
2346 -- generated as part of testing membership in T'Class, this is T; for an 2363 -- generated as part of testing membership in T'Class, this is T; for an
2615 -- Entity (Node4-Sem) 2632 -- Entity (Node4-Sem)
2616 -- Associated_Node (Node4-Sem) 2633 -- Associated_Node (Node4-Sem)
2617 -- Original_Discriminant (Node2-Sem) 2634 -- Original_Discriminant (Node2-Sem)
2618 -- Is_Elaboration_Checks_OK_Node (Flag1-Sem) 2635 -- Is_Elaboration_Checks_OK_Node (Flag1-Sem)
2619 -- Is_SPARK_Mode_On_Node (Flag2-Sem) 2636 -- Is_SPARK_Mode_On_Node (Flag2-Sem)
2637 -- Is_Elaboration_Warnings_OK_Node (Flag3-Sem)
2620 -- Has_Private_View (Flag11-Sem) (set in generic units) 2638 -- Has_Private_View (Flag11-Sem) (set in generic units)
2621 -- Redundant_Use (Flag13-Sem) 2639 -- Redundant_Use (Flag13-Sem)
2622 -- Atomic_Sync_Required (Flag14-Sem) 2640 -- Atomic_Sync_Required (Flag14-Sem)
2623 -- plus fields for expression 2641 -- plus fields for expression
2624 2642
2866 -- depending on the setting of the Ekind field. These additional 2884 -- depending on the setting of the Ekind field. These additional
2867 -- fields are defined (and access subprograms declared) in package 2885 -- fields are defined (and access subprograms declared) in package
2868 -- Einfo. 2886 -- Einfo.
2869 2887
2870 -- Note: N_Defining_Identifier is an extended node whose fields are 2888 -- Note: N_Defining_Identifier is an extended node whose fields are
2871 -- deliberately layed out to match the layout of fields in an ordinary 2889 -- deliberately laid out to match the layout of fields in an ordinary
2872 -- N_Identifier node allowing for easy alteration of an identifier 2890 -- N_Identifier node allowing for easy alteration of an identifier
2873 -- node into a defining identifier node. For details, see procedure 2891 -- node into a defining identifier node. For details, see procedure
2874 -- Sinfo.CN.Change_Identifier_To_Defining_Identifier. 2892 -- Sinfo.CN.Change_Identifier_To_Defining_Identifier.
2875 2893
2876 -- N_Defining_Identifier 2894 -- N_Defining_Identifier
3213 -- fields depending on the setting of the Ekind field. These 3231 -- fields depending on the setting of the Ekind field. These
3214 -- additional fields are defined (and access subprograms declared) 3232 -- additional fields are defined (and access subprograms declared)
3215 -- in package Einfo. 3233 -- in package Einfo.
3216 3234
3217 -- Note: N_Defining_Character_Literal is an extended node whose fields 3235 -- Note: N_Defining_Character_Literal is an extended node whose fields
3218 -- are deliberate layed out to match the layout of fields in an ordinary 3236 -- are deliberately laid out to match layout of fields in an ordinary
3219 -- N_Character_Literal node allowing for easy alteration of a character 3237 -- N_Character_Literal node, allowing for easy alteration of a character
3220 -- literal node into a defining character literal node. For details, see 3238 -- literal node into a defining character literal node. For details, see
3221 -- Sinfo.CN.Change_Character_Literal_To_Defining_Character_Literal. 3239 -- Sinfo.CN.Change_Character_Literal_To_Defining_Character_Literal.
3222 3240
3223 -- N_Defining_Character_Literal 3241 -- N_Defining_Character_Literal
3224 -- Sloc points to literal 3242 -- Sloc points to literal
4148 -- Aggregate_Bounds (Node3-Sem) 4166 -- Aggregate_Bounds (Node3-Sem)
4149 -- Associated_Node (Node4-Sem) 4167 -- Associated_Node (Node4-Sem)
4150 -- Compile_Time_Known_Aggregate (Flag18-Sem) 4168 -- Compile_Time_Known_Aggregate (Flag18-Sem)
4151 -- Expansion_Delayed (Flag11-Sem) 4169 -- Expansion_Delayed (Flag11-Sem)
4152 -- Has_Self_Reference (Flag13-Sem) 4170 -- Has_Self_Reference (Flag13-Sem)
4171 -- Is_Homogeneous_Aggregate (Flag14)
4153 -- plus fields for expression 4172 -- plus fields for expression
4154 4173
4155 -- Note: this structure is used for both record and array aggregates 4174 -- Note: this structure is used for both record and array aggregates
4156 -- since the two cases are not separable by the parser. The parser 4175 -- since the two cases are not separable by the parser. The parser
4157 -- makes no attempt to enforce consistency here, so it is up to the 4176 -- makes no attempt to enforce consistency here, so it is up to the
5438 -- fields depending on the setting of the Ekind field. These 5457 -- fields depending on the setting of the Ekind field. These
5439 -- additional fields are defined (and access subprograms declared) 5458 -- additional fields are defined (and access subprograms declared)
5440 -- in package Einfo. 5459 -- in package Einfo.
5441 5460
5442 -- Note: N_Defining_Operator_Symbol is an extended node whose fields 5461 -- Note: N_Defining_Operator_Symbol is an extended node whose fields
5443 -- are deliberately layed out to match the layout of fields in an 5462 -- are deliberately laid out to match the layout of fields in an
5444 -- ordinary N_Operator_Symbol node allowing for easy alteration of 5463 -- ordinary N_Operator_Symbol node allowing for easy alteration of
5445 -- an operator symbol node into a defining operator symbol node. 5464 -- an operator symbol node into a defining operator symbol node.
5446 -- See Sinfo.CN.Change_Operator_Symbol_To_Defining_Operator_Symbol 5465 -- See Sinfo.CN.Change_Operator_Symbol_To_Defining_Operator_Symbol
5447 -- for further details. 5466 -- for further details.
5448 5467
6643 -- a compilation unit, referenced from the N_Compilation_Unit node, 6662 -- a compilation unit, referenced from the N_Compilation_Unit node,
6644 -- that contains these items. 6663 -- that contains these items.
6645 6664
6646 -- N_Compilation_Unit 6665 -- N_Compilation_Unit
6647 -- Sloc points to first token of defining unit name 6666 -- Sloc points to first token of defining unit name
6648 -- Library_Unit (Node4-Sem) corresponding/parent spec/body
6649 -- Context_Items (List1) context items and pragmas preceding unit 6667 -- Context_Items (List1) context items and pragmas preceding unit
6650 -- Private_Present (Flag15) set if library unit has private keyword 6668 -- Private_Present (Flag15) set if library unit has private keyword
6651 -- Unit (Node2) library item or subunit 6669 -- Unit (Node2) library item or subunit
6652 -- Aux_Decls_Node (Node5) points to the N_Compilation_Unit_Aux node 6670 -- Aux_Decls_Node (Node5) points to the N_Compilation_Unit_Aux node
6671 -- First_Inlined_Subprogram (Node3-Sem)
6672 -- Library_Unit (Node4-Sem) corresponding/parent spec/body
6673 -- Save_Invocation_Graph_Of_Body (Flag1-Sem)
6674 -- Acts_As_Spec (Flag4-Sem) flag for subprogram body with no spec
6675 -- Body_Required (Flag13-Sem) set for spec if body is required
6676 -- Has_Pragma_Suppress_All (Flag14-Sem)
6677 -- Context_Pending (Flag16-Sem)
6653 -- Has_No_Elaboration_Code (Flag17-Sem) 6678 -- Has_No_Elaboration_Code (Flag17-Sem)
6654 -- Body_Required (Flag13-Sem) set for spec if body is required
6655 -- Acts_As_Spec (Flag4-Sem) flag for subprogram body with no spec
6656 -- Context_Pending (Flag16-Sem)
6657 -- First_Inlined_Subprogram (Node3-Sem)
6658 -- Has_Pragma_Suppress_All (Flag14-Sem)
6659 6679
6660 -- N_Compilation_Unit_Aux 6680 -- N_Compilation_Unit_Aux
6661 -- Sloc is a copy of the Sloc from the N_Compilation_Unit node 6681 -- Sloc is a copy of the Sloc from the N_Compilation_Unit node
6662 -- Declarations (List2) (set to No_List if no global declarations) 6682 -- Declarations (List2) (set to No_List if no global declarations)
6663 -- Actions (List1) (set to No_List if no actions) 6683 -- Actions (List1) (set to No_List if no actions)
7628 -- Is_Checked (Flag11-Sem) 7648 -- Is_Checked (Flag11-Sem)
7629 -- Is_Delayed_Aspect (Flag14-Sem) 7649 -- Is_Delayed_Aspect (Flag14-Sem)
7630 -- Is_Disabled (Flag15-Sem) 7650 -- Is_Disabled (Flag15-Sem)
7631 -- Is_Boolean_Aspect (Flag16-Sem) 7651 -- Is_Boolean_Aspect (Flag16-Sem)
7632 -- Split_PPC (Flag17) Set if split pre/post attribute 7652 -- Split_PPC (Flag17) Set if split pre/post attribute
7653 -- Aspect_On_Partial_View (Flag18-Sem)
7633 7654
7634 -- Note: Aspect_Specification is an Ada 2012 feature 7655 -- Note: Aspect_Specification is an Ada 2012 feature
7635 7656
7636 -- Note: The Identifier serves to identify the aspect involved (it 7657 -- Note: The Identifier serves to identify the aspect involved (it
7637 -- is the aspect whose name corresponds to the Chars field). This 7658 -- is the aspect whose name corresponds to the Chars field). This
8044 -- name that has been resolved to an expanded name. The semantic phase 8065 -- name that has been resolved to an expanded name. The semantic phase
8045 -- replaces N_Selected_Component nodes that represent names by the use 8066 -- replaces N_Selected_Component nodes that represent names by the use
8046 -- of this node, leaving the N_Selected_Component node used only when 8067 -- of this node, leaving the N_Selected_Component node used only when
8047 -- the prefix is a record or protected type. 8068 -- the prefix is a record or protected type.
8048 8069
8049 -- The fields of the N_Expanded_Name node are layed out identically 8070 -- The fields of the N_Expanded_Name node are laid out identically
8050 -- to those of the N_Selected_Component node, allowing conversion of 8071 -- to those of the N_Selected_Component node, allowing conversion of
8051 -- an expanded name node to a selected component node to be done 8072 -- an expanded name node to a selected component node to be done
8052 -- easily, see Sinfo.CN.Change_Selected_Component_To_Expanded_Name. 8073 -- easily, see Sinfo.CN.Change_Selected_Component_To_Expanded_Name.
8053 8074
8054 -- There is no special sprint syntax for an expanded name 8075 -- There is no special sprint syntax for an expanded name
8060 -- Selector_Name (Node2) 8081 -- Selector_Name (Node2)
8061 -- Entity (Node4-Sem) 8082 -- Entity (Node4-Sem)
8062 -- Associated_Node (Node4-Sem) 8083 -- Associated_Node (Node4-Sem)
8063 -- Is_Elaboration_Checks_OK_Node (Flag1-Sem) 8084 -- Is_Elaboration_Checks_OK_Node (Flag1-Sem)
8064 -- Is_SPARK_Mode_On_Node (Flag2-Sem) 8085 -- Is_SPARK_Mode_On_Node (Flag2-Sem)
8086 -- Is_Elaboration_Warnings_OK_Node (Flag3-Sem)
8065 -- Has_Private_View (Flag11-Sem) set in generic units 8087 -- Has_Private_View (Flag11-Sem) set in generic units
8066 -- Redundant_Use (Flag13-Sem) 8088 -- Redundant_Use (Flag13-Sem)
8067 -- Atomic_Sync_Required (Flag14-Sem) 8089 -- Atomic_Sync_Required (Flag14-Sem)
8068 -- plus fields for expression 8090 -- plus fields for expression
8069 8091
8585 -- The Sprint syntax shown above is not enabled by default 8607 -- The Sprint syntax shown above is not enabled by default
8586 8608
8587 -- N_Variable_Reference_Marker 8609 -- N_Variable_Reference_Marker
8588 -- Sloc points to Sloc of original variable reference 8610 -- Sloc points to Sloc of original variable reference
8589 -- Target (Node1-Sem) 8611 -- Target (Node1-Sem)
8590 -- Is_Read (Flag1-Sem) 8612 -- Is_Elaboration_Checks_OK_Node (Flag1-Sem)
8591 -- Is_Write (Flag2-Sem) 8613 -- Is_SPARK_Mode_On_Node (Flag2-Sem)
8614 -- Is_Elaboration_Warnings_OK_Node (Flag3-Sem)
8615 -- Is_Read (Flag4-Sem)
8616 -- Is_Write (Flag5-Sem)
8592 8617
8593 ----------- 8618 -----------
8594 -- Empty -- 8619 -- Empty --
8595 ----------- 8620 -----------
8596 8621
9285 (N : Node_Id) return Boolean; -- Flag14 9310 (N : Node_Id) return Boolean; -- Flag14
9286 9311
9287 function Array_Aggregate 9312 function Array_Aggregate
9288 (N : Node_Id) return Node_Id; -- Node3 9313 (N : Node_Id) return Node_Id; -- Node3
9289 9314
9315 function Aspect_On_Partial_View
9316 (N : Node_Id) return Boolean; -- Flag18
9317
9290 function Aspect_Rep_Item 9318 function Aspect_Rep_Item
9291 (N : Node_Id) return Node_Id; -- Node2 9319 (N : Node_Id) return Node_Id; -- Node2
9292 9320
9293 function Assignment_OK 9321 function Assignment_OK
9294 (N : Node_Id) return Boolean; -- Flag15 9322 (N : Node_Id) return Boolean; -- Flag15
9831 (N : Node_Id) return Boolean; -- Flag4 9859 (N : Node_Id) return Boolean; -- Flag4
9832 9860
9833 function Is_Generic_Contract_Pragma 9861 function Is_Generic_Contract_Pragma
9834 (N : Node_Id) return Boolean; -- Flag2 9862 (N : Node_Id) return Boolean; -- Flag2
9835 9863
9864 function Is_Homogeneous_Aggregate
9865 (N : Node_Id) return Boolean; -- Flag14
9866
9836 function Is_Ignored 9867 function Is_Ignored
9837 (N : Node_Id) return Boolean; -- Flag9 9868 (N : Node_Id) return Boolean; -- Flag9
9838 9869
9839 function Is_Ignored_Ghost_Pragma 9870 function Is_Ignored_Ghost_Pragma
9840 (N : Node_Id) return Boolean; -- Flag8 9871 (N : Node_Id) return Boolean; -- Flag8
9877 9908
9878 function Is_Qualified_Universal_Literal 9909 function Is_Qualified_Universal_Literal
9879 (N : Node_Id) return Boolean; -- Flag4 9910 (N : Node_Id) return Boolean; -- Flag4
9880 9911
9881 function Is_Read 9912 function Is_Read
9882 (N : Node_Id) return Boolean; -- Flag1 9913 (N : Node_Id) return Boolean; -- Flag4
9883 9914
9884 function Is_Source_Call 9915 function Is_Source_Call
9885 (N : Node_Id) return Boolean; -- Flag4 9916 (N : Node_Id) return Boolean; -- Flag4
9886 9917
9887 function Is_SPARK_Mode_On_Node 9918 function Is_SPARK_Mode_On_Node
9904 9935
9905 function Is_Task_Master 9936 function Is_Task_Master
9906 (N : Node_Id) return Boolean; -- Flag5 9937 (N : Node_Id) return Boolean; -- Flag5
9907 9938
9908 function Is_Write 9939 function Is_Write
9909 (N : Node_Id) return Boolean; -- Flag2 9940 (N : Node_Id) return Boolean; -- Flag5
9910 9941
9911 function Iteration_Scheme 9942 function Iteration_Scheme
9912 (N : Node_Id) return Node_Id; -- Node2 9943 (N : Node_Id) return Node_Id; -- Node2
9913 9944
9914 function Iterator_Specification 9945 function Iterator_Specification
10172 function Right_Opnd 10203 function Right_Opnd
10173 (N : Node_Id) return Node_Id; -- Node3 10204 (N : Node_Id) return Node_Id; -- Node3
10174 10205
10175 function Rounded_Result 10206 function Rounded_Result
10176 (N : Node_Id) return Boolean; -- Flag18 10207 (N : Node_Id) return Boolean; -- Flag18
10208
10209 function Save_Invocation_Graph_Of_Body
10210 (N : Node_Id) return Boolean; -- Flag1
10177 10211
10178 function SCIL_Controlling_Tag 10212 function SCIL_Controlling_Tag
10179 (N : Node_Id) return Node_Id; -- Node5 10213 (N : Node_Id) return Node_Id; -- Node5
10180 10214
10181 function SCIL_Entity 10215 function SCIL_Entity
10326 -- a high level logical access with type checking. In addition to setting 10360 -- a high level logical access with type checking. In addition to setting
10327 -- the indicated field of the node N to the given Val, in the case of 10361 -- the indicated field of the node N to the given Val, in the case of
10328 -- tree pointers (List1-4), the parent pointer of the Val node is set to 10362 -- tree pointers (List1-4), the parent pointer of the Val node is set to
10329 -- point back to node N. This automates the setting of the parent pointer. 10363 -- point back to node N. This automates the setting of the parent pointer.
10330 10364
10365 -- WARNING: There is a matching C declaration of a few subprograms in fe.h
10366
10331 procedure Set_Abort_Present 10367 procedure Set_Abort_Present
10332 (N : Node_Id; Val : Boolean := True); -- Flag15 10368 (N : Node_Id; Val : Boolean := True); -- Flag15
10333 10369
10334 procedure Set_Abortable_Part 10370 procedure Set_Abortable_Part
10335 (N : Node_Id; Val : Node_Id); -- Node2 10371 (N : Node_Id; Val : Node_Id); -- Node2
10392 (N : Node_Id; Val : Boolean := True); -- Flag14 10428 (N : Node_Id; Val : Boolean := True); -- Flag14
10393 10429
10394 procedure Set_Array_Aggregate 10430 procedure Set_Array_Aggregate
10395 (N : Node_Id; Val : Node_Id); -- Node3 10431 (N : Node_Id; Val : Node_Id); -- Node3
10396 10432
10433 procedure Set_Aspect_On_Partial_View
10434 (N : Node_Id; Val : Boolean := True); -- Flag18
10435
10397 procedure Set_Aspect_Rep_Item 10436 procedure Set_Aspect_Rep_Item
10398 (N : Node_Id; Val : Node_Id); -- Node2 10437 (N : Node_Id; Val : Node_Id); -- Node2
10399 10438
10400 procedure Set_Assignment_OK 10439 procedure Set_Assignment_OK
10401 (N : Node_Id; Val : Boolean := True); -- Flag15 10440 (N : Node_Id; Val : Boolean := True); -- Flag15
10935 (N : Node_Id; Val : Boolean := True); -- Flag4 10974 (N : Node_Id; Val : Boolean := True); -- Flag4
10936 10975
10937 procedure Set_Is_Generic_Contract_Pragma 10976 procedure Set_Is_Generic_Contract_Pragma
10938 (N : Node_Id; Val : Boolean := True); -- Flag2 10977 (N : Node_Id; Val : Boolean := True); -- Flag2
10939 10978
10979 procedure Set_Is_Homogeneous_Aggregate
10980 (N : Node_Id; Val : Boolean := True); -- Flag14
10981
10940 procedure Set_Is_Ignored 10982 procedure Set_Is_Ignored
10941 (N : Node_Id; Val : Boolean := True); -- Flag9 10983 (N : Node_Id; Val : Boolean := True); -- Flag9
10942 10984
10943 procedure Set_Is_Ignored_Ghost_Pragma 10985 procedure Set_Is_Ignored_Ghost_Pragma
10944 (N : Node_Id; Val : Boolean := True); -- Flag8 10986 (N : Node_Id; Val : Boolean := True); -- Flag8
10981 11023
10982 procedure Set_Is_Qualified_Universal_Literal 11024 procedure Set_Is_Qualified_Universal_Literal
10983 (N : Node_Id; Val : Boolean := True); -- Flag4 11025 (N : Node_Id; Val : Boolean := True); -- Flag4
10984 11026
10985 procedure Set_Is_Read 11027 procedure Set_Is_Read
10986 (N : Node_Id; Val : Boolean := True); -- Flag1 11028 (N : Node_Id; Val : Boolean := True); -- Flag4
10987 11029
10988 procedure Set_Is_Source_Call 11030 procedure Set_Is_Source_Call
10989 (N : Node_Id; Val : Boolean := True); -- Flag4 11031 (N : Node_Id; Val : Boolean := True); -- Flag4
10990 11032
10991 procedure Set_Is_SPARK_Mode_On_Node 11033 procedure Set_Is_SPARK_Mode_On_Node
11008 11050
11009 procedure Set_Is_Task_Master 11051 procedure Set_Is_Task_Master
11010 (N : Node_Id; Val : Boolean := True); -- Flag5 11052 (N : Node_Id; Val : Boolean := True); -- Flag5
11011 11053
11012 procedure Set_Is_Write 11054 procedure Set_Is_Write
11013 (N : Node_Id; Val : Boolean := True); -- Flag2 11055 (N : Node_Id; Val : Boolean := True); -- Flag5
11014 11056
11015 procedure Set_Iteration_Scheme 11057 procedure Set_Iteration_Scheme
11016 (N : Node_Id; Val : Node_Id); -- Node2 11058 (N : Node_Id; Val : Node_Id); -- Node2
11017 11059
11018 procedure Set_Iterator_Specification 11060 procedure Set_Iterator_Specification
11276 procedure Set_Right_Opnd 11318 procedure Set_Right_Opnd
11277 (N : Node_Id; Val : Node_Id); -- Node3 11319 (N : Node_Id; Val : Node_Id); -- Node3
11278 11320
11279 procedure Set_Rounded_Result 11321 procedure Set_Rounded_Result
11280 (N : Node_Id; Val : Boolean := True); -- Flag18 11322 (N : Node_Id; Val : Boolean := True); -- Flag18
11323
11324 procedure Set_Save_Invocation_Graph_Of_Body
11325 (N : Node_Id; Val : Boolean := True); -- Flag1
11281 11326
11282 procedure Set_SCIL_Controlling_Tag 11327 procedure Set_SCIL_Controlling_Tag
11283 (N : Node_Id; Val : Node_Id); -- Node5 11328 (N : Node_Id; Val : Node_Id); -- Node5
11284 11329
11285 procedure Set_SCIL_Entity 11330 procedure Set_SCIL_Entity
11437 11482
11438 function End_Location (N : Node_Id) return Source_Ptr; 11483 function End_Location (N : Node_Id) return Source_Ptr;
11439 -- N is an N_If_Statement or N_Case_Statement node, and this function 11484 -- N is an N_If_Statement or N_Case_Statement node, and this function
11440 -- returns the location of the IF token in the END IF sequence by 11485 -- returns the location of the IF token in the END IF sequence by
11441 -- translating the value of the End_Span field. 11486 -- translating the value of the End_Span field.
11487
11488 -- WARNING: There is a matching C declaration of this subprogram in fe.h
11442 11489
11443 procedure Set_End_Location (N : Node_Id; S : Source_Ptr); 11490 procedure Set_End_Location (N : Node_Id; S : Source_Ptr);
11444 -- N is an N_If_Statement or N_Case_Statement node. This procedure sets 11491 -- N is an N_If_Statement or N_Case_Statement node. This procedure sets
11445 -- the End_Span field to correspond to the given value S. In other words, 11492 -- the End_Span field to correspond to the given value S. In other words,
11446 -- End_Span is set to the difference between S and Sloc (N), the starting 11493 -- End_Span is set to the difference between S and Sloc (N), the starting
11554 V8 : Node_Kind; 11601 V8 : Node_Kind;
11555 V9 : Node_Kind; 11602 V9 : Node_Kind;
11556 V10 : Node_Kind; 11603 V10 : Node_Kind;
11557 V11 : Node_Kind) return Boolean; 11604 V11 : Node_Kind) return Boolean;
11558 11605
11606 -- 12..15-parameter versions are not yet needed
11607
11608 function Nkind_In
11609 (T : Node_Kind;
11610 V1 : Node_Kind;
11611 V2 : Node_Kind;
11612 V3 : Node_Kind;
11613 V4 : Node_Kind;
11614 V5 : Node_Kind;
11615 V6 : Node_Kind;
11616 V7 : Node_Kind;
11617 V8 : Node_Kind;
11618 V9 : Node_Kind;
11619 V10 : Node_Kind;
11620 V11 : Node_Kind;
11621 V12 : Node_Kind;
11622 V13 : Node_Kind;
11623 V14 : Node_Kind;
11624 V15 : Node_Kind;
11625 V16 : Node_Kind) return Boolean;
11626
11559 pragma Inline (Nkind_In); 11627 pragma Inline (Nkind_In);
11560 -- Inline all above functions 11628 -- Inline all above functions
11561 11629
11562 ----------------------- 11630 -----------------------
11563 -- Utility Functions -- 11631 -- Utility Functions --
11940 4 => False, -- unused 12008 4 => False, -- unused
11941 5 => False), -- unused 12009 5 => False), -- unused
11942 12010
11943 N_Iterated_Component_Association => 12011 N_Iterated_Component_Association =>
11944 (1 => True, -- Defining_Identifier (Node1) 12012 (1 => True, -- Defining_Identifier (Node1)
11945 2 => False, -- unused 12013 2 => True, -- Loop_Actions (List2-Sem)
11946 3 => True, -- Expression (Node3) 12014 3 => True, -- Expression (Node3)
11947 4 => True, -- Discrete_Choices (List4) 12015 4 => True, -- Discrete_Choices (List4)
11948 5 => False), -- unused 12016 5 => False), -- unused
11949 12017
11950 N_Delta_Aggregate => 12018 N_Delta_Aggregate =>
13279 pragma Inline (All_Present); 13347 pragma Inline (All_Present);
13280 pragma Inline (Alternatives); 13348 pragma Inline (Alternatives);
13281 pragma Inline (Ancestor_Part); 13349 pragma Inline (Ancestor_Part);
13282 pragma Inline (Atomic_Sync_Required); 13350 pragma Inline (Atomic_Sync_Required);
13283 pragma Inline (Array_Aggregate); 13351 pragma Inline (Array_Aggregate);
13352 pragma Inline (Aspect_On_Partial_View);
13284 pragma Inline (Aspect_Rep_Item); 13353 pragma Inline (Aspect_Rep_Item);
13285 pragma Inline (Assignment_OK); 13354 pragma Inline (Assignment_OK);
13286 pragma Inline (Associated_Node); 13355 pragma Inline (Associated_Node);
13287 pragma Inline (At_End_Proc); 13356 pragma Inline (At_End_Proc);
13288 pragma Inline (Attribute_Name); 13357 pragma Inline (Attribute_Name);
13462 pragma Inline (Is_Expanded_Build_In_Place_Call); 13531 pragma Inline (Is_Expanded_Build_In_Place_Call);
13463 pragma Inline (Is_Expanded_Contract); 13532 pragma Inline (Is_Expanded_Contract);
13464 pragma Inline (Is_Finalization_Wrapper); 13533 pragma Inline (Is_Finalization_Wrapper);
13465 pragma Inline (Is_Folded_In_Parser); 13534 pragma Inline (Is_Folded_In_Parser);
13466 pragma Inline (Is_Generic_Contract_Pragma); 13535 pragma Inline (Is_Generic_Contract_Pragma);
13536 pragma Inline (Is_Homogeneous_Aggregate);
13467 pragma Inline (Is_Ignored); 13537 pragma Inline (Is_Ignored);
13468 pragma Inline (Is_Ignored_Ghost_Pragma); 13538 pragma Inline (Is_Ignored_Ghost_Pragma);
13469 pragma Inline (Is_In_Discriminant_Check); 13539 pragma Inline (Is_In_Discriminant_Check);
13470 pragma Inline (Is_Inherited_Pragma); 13540 pragma Inline (Is_Inherited_Pragma);
13471 pragma Inline (Is_Initialization_Block); 13541 pragma Inline (Is_Initialization_Block);
13575 pragma Inline (Return_Object_Declarations); 13645 pragma Inline (Return_Object_Declarations);
13576 pragma Inline (Return_Statement_Entity); 13646 pragma Inline (Return_Statement_Entity);
13577 pragma Inline (Reverse_Present); 13647 pragma Inline (Reverse_Present);
13578 pragma Inline (Right_Opnd); 13648 pragma Inline (Right_Opnd);
13579 pragma Inline (Rounded_Result); 13649 pragma Inline (Rounded_Result);
13650 pragma Inline (Save_Invocation_Graph_Of_Body);
13580 pragma Inline (SCIL_Controlling_Tag); 13651 pragma Inline (SCIL_Controlling_Tag);
13581 pragma Inline (SCIL_Entity); 13652 pragma Inline (SCIL_Entity);
13582 pragma Inline (SCIL_Tag_Value); 13653 pragma Inline (SCIL_Tag_Value);
13583 pragma Inline (SCIL_Target_Prim); 13654 pragma Inline (SCIL_Target_Prim);
13584 pragma Inline (Scope); 13655 pragma Inline (Scope);
13644 pragma Inline (Set_All_Others); 13715 pragma Inline (Set_All_Others);
13645 pragma Inline (Set_All_Present); 13716 pragma Inline (Set_All_Present);
13646 pragma Inline (Set_Alternatives); 13717 pragma Inline (Set_Alternatives);
13647 pragma Inline (Set_Ancestor_Part); 13718 pragma Inline (Set_Ancestor_Part);
13648 pragma Inline (Set_Array_Aggregate); 13719 pragma Inline (Set_Array_Aggregate);
13720 pragma Inline (Set_Aspect_On_Partial_View);
13649 pragma Inline (Set_Aspect_Rep_Item); 13721 pragma Inline (Set_Aspect_Rep_Item);
13650 pragma Inline (Set_Assignment_OK); 13722 pragma Inline (Set_Assignment_OK);
13651 pragma Inline (Set_Associated_Node); 13723 pragma Inline (Set_Associated_Node);
13652 pragma Inline (Set_At_End_Proc); 13724 pragma Inline (Set_At_End_Proc);
13653 pragma Inline (Set_Atomic_Sync_Required); 13725 pragma Inline (Set_Atomic_Sync_Required);
13826 pragma Inline (Set_Is_Expanded_Build_In_Place_Call); 13898 pragma Inline (Set_Is_Expanded_Build_In_Place_Call);
13827 pragma Inline (Set_Is_Expanded_Contract); 13899 pragma Inline (Set_Is_Expanded_Contract);
13828 pragma Inline (Set_Is_Finalization_Wrapper); 13900 pragma Inline (Set_Is_Finalization_Wrapper);
13829 pragma Inline (Set_Is_Folded_In_Parser); 13901 pragma Inline (Set_Is_Folded_In_Parser);
13830 pragma Inline (Set_Is_Generic_Contract_Pragma); 13902 pragma Inline (Set_Is_Generic_Contract_Pragma);
13903 pragma Inline (Set_Is_Homogeneous_Aggregate);
13831 pragma Inline (Set_Is_Ignored); 13904 pragma Inline (Set_Is_Ignored);
13832 pragma Inline (Set_Is_Ignored_Ghost_Pragma); 13905 pragma Inline (Set_Is_Ignored_Ghost_Pragma);
13833 pragma Inline (Set_Is_In_Discriminant_Check); 13906 pragma Inline (Set_Is_In_Discriminant_Check);
13834 pragma Inline (Set_Is_Inherited_Pragma); 13907 pragma Inline (Set_Is_Inherited_Pragma);
13835 pragma Inline (Set_Is_Initialization_Block); 13908 pragma Inline (Set_Is_Initialization_Block);
13939 pragma Inline (Set_Result_Definition); 14012 pragma Inline (Set_Result_Definition);
13940 pragma Inline (Set_Return_Object_Declarations); 14013 pragma Inline (Set_Return_Object_Declarations);
13941 pragma Inline (Set_Reverse_Present); 14014 pragma Inline (Set_Reverse_Present);
13942 pragma Inline (Set_Right_Opnd); 14015 pragma Inline (Set_Right_Opnd);
13943 pragma Inline (Set_Rounded_Result); 14016 pragma Inline (Set_Rounded_Result);
14017 pragma Inline (Set_Save_Invocation_Graph_Of_Body);
13944 pragma Inline (Set_SCIL_Controlling_Tag); 14018 pragma Inline (Set_SCIL_Controlling_Tag);
13945 pragma Inline (Set_SCIL_Entity); 14019 pragma Inline (Set_SCIL_Entity);
13946 pragma Inline (Set_SCIL_Tag_Value); 14020 pragma Inline (Set_SCIL_Tag_Value);
13947 pragma Inline (Set_SCIL_Target_Prim); 14021 pragma Inline (Set_SCIL_Target_Prim);
13948 pragma Inline (Set_Scope); 14022 pragma Inline (Set_Scope);