From 9f373bb8832c6f7b52c057ab7db0f09433c9f222 Mon Sep 17 00:00:00 2001 From: charlet Date: Thu, 16 Jun 2005 08:35:26 +0000 Subject: 2005-06-14 Ed Schonberg Javier Miranda Thomas Quinot Robert Dewar Hristian Kirtchev Gary Dismukes * einfo.ads, einfo.adb (Is_Local_Anonymous_Access): New flag on anonymous access types, to indicate that the accessibility level of the type is determined by that of the enclosing declaration. (Has_Persistent_BSS): New flag (Set_Is_Primitive_Wrapper): Upgrade the barrier to allow the usage of this attribute with functions. (Is_Primitive_Wrapper): Remove the barrier. (Has_Specified_Stream_Input, Has_Specified_Stream_Output, Has_Specified_Stream_Read, Has_Specified_Stream_Write): New subprograms. (Set_Has_Specified_Stream_Input, Set_Has_Specified_Stream_Output, Set_Has_Specified_Stream_Read, Set_Has_Specified_Stream_Write): New subprograms. (Is_Pure_Unit_Access_Type): New flag (Abstract_Interfaces): Complete the assertion to cover all usages. (Set_Is_Interface): Complete the assertion to cover all usages. (Is_Primitive_Wrapper): New attribute. (Is_Obsolescent): Now applies to all entities (though it is only set for subprograms currently) New flag: Has_Constrained_Partial_View, to implemente Ada 2005 AI-363, which solves various problems concerning access subtypes. (Has_Persistent_BSS): New flag (Is_Primitive_Wrapper, Set_Primitive_Wrapper): Code cleanup. Remove these subprograms because this attribute is currently not used. New entity flags: Has_Specified_Stream_Input (Flag190) Has_Specified_Stream_Output (Flag191) Has_Specified_Stream_Read (Flag192) Has_Specified_Stream_Write (Flag193) Present in all type and subtype entities. Set for a given view if the corresponding stream-oriented attribute has been defined by an attribute definition clause. When such a clause occurs, a TSS is set on the underlying full view; the flags are used to track visibility of the attribute definition clause for partial or incomplete views. (Is_Pure_Unit_Access_Type): New flag Clarify use of Is_Internal. (Is_Primitive_Wrapper): New attribute present in primitive subprograms internally generated to wrap the invocation of tasks and protected types that implement interfaces. (Implementation_Base_Type): Documentation correction (Is_Obsolescent): Now applies to all entities (though it is only set for subprograms currently) New flag: Has_Constrained_Partial_View, to implement Ada 2005 AI-363, which solves various problems concerning access subtypes. * exp_ch9.adb (Type_Conformant_Parameters): Introduce mode conformance for examined parameters. Identify unequal parameter list lengths as non-conformant parameters. (Overriding_Possible): Do not check for "All" qualifier in declaration of controlling access parameter, following prescription of AI-404. (Build_Entry_Wrapper_Spec, Build_Entry_Wrapper_Body): New subprograms that build the procedure body that wraps an entry invocation (Build_Corresponding_Record, Build_Protected_Sub_Specification, Expand_N_Protected_Body, Expand_N_Protected_Type_Declaration, Expand_N_Task_Body, Expand_N_Task_Type_Declaration): Modified to give support to abstract interface types * freeze.adb (Freeze_Entity): Issue error message if Is_Pure_Unit_Access_Type set, unless we are in Ada 2005 mode and the type has no storage pool (Ada 2005) AI-366. Also modified to give support to abstract interface types (Freeze_Subprogram): Issue an error for a dispatching subprogram with an Inline_Always pragma. * par-ch9.adb (P_Task_Items): Reserved words "not" or "overriding" may now begin an entry declaration. (P_Entry_Or_Subprogram_With_Indicator): New procedure in P_Protected_Operation_Declaration_Opt. Parse an entry declaration or a subprogram declaration preceded by an overriding indicator. (P_Protected_Operation_Declaration_Opt): Add case for parsing entry declarations or subprogram declarations preceded by reserved words "not" or "overriding". (P_Entry_Declaration): Update comment. Parse and check overriding indicator, set semantic flags of entry declarations. (P_Task): New error message in case of private applied to a task type declaration. (P_Protected): New error message in case of private applied to a task type declaration. * sem_ch7.adb (Preserve_Full_Attributes): Modified to handle the case in which the full view of a type implementing an interface is a concurrent type. (Has_Overriding_Pragma): Remove obsolete implementation of AI-218. Declare_Inherited_Private_Subprograms): If an explicit operation overrides an operation that is inherited in the private part, mark the explicit one as overriding, to enable overriding indicator checks. (Preserve_Full_Attributes): Propagate Is_Unchecked_Union attribute from full view to partial view, to simplify handling in back-end. * sprint.adb: Print interface lists where needed: derived types, protected types, task types. output "is null" for null procedures. Part of implementation of * sem_cat.adb (Validate_Access_Type_Declaration): Implement AI-366 relaxation of rules for access types in pure, shared passive partitions. * exp_strm.adb (Build_Mutable_Record_Read_Procedure): Reorganize to first read discriminants into temporary objects, performing checks on the read values, then possibly performing discriminant checks on the actual (if it is constrained), and only finally reading the components into a constrained temporary object. (Build_Elementary_Input_Call): Adjust the specific circuitry for the case of reading discriminants of a mutable record type to recognize the new form of the code generated by Build_Mutable_Record_Read_Procedure. * exp_tss.ads, exp_tss.adb (Make_Init_Proc_Name): Reimplement in terms of a simple call to Make_TSS_Name. (Make_TSS_Name_Local): Add the TSS name as the last thing in the name buffer, in order for Is_TSS to work correctly on local TSS names. * sem_attr.ads, sem_attr.adb (Resolve_Attribute, case 'Access): Use flag Is_Local_Anonymous_Access to check legaliy of attributes in the context of access components and stand-alone access objects. (Stream_Attribute_Available): In Ada 95 mode, a stream attribute is treated as available for a limited private type if there is an attribute_definition_clause that applies to its full view, but not in other cases where the attribute is available for the full view (specifically, the sole fact that the full view is non-limited does not make the attribute available for the partial view). (Build_Access_Subprogram_Type): Diagnose attempt to apply 'access to a non-overloaded intrinsic subprogram. (Check_Stream_Attribute): Reject an attribute reference for an unavailable stream attribute even if the prefix is not a limited type (case of a 'Input attribute reference for an abstract, non-classwide type) (Stream_Attribute_Available): New function to determine whether a stream attribute is available at a place. (Check_Attribute): Use Stream_Attribute_Available instead of just testing for TSS presence on the implementation base type. (Analyze_Attribute): Modified to give support to task interfaces. (Analyze_Access_Attribute): Add error check for use of an Access (or Unrestricted_Access) attribute with a subprogram marked as Inline_Always. (Analyze_Attribute, case Attribute_Address): Add error check for use of an Address attribute with a subprogram marked as Inline_Always. Update Eval_Attribute to handle new value of Width from AI-395 * sem_ch13.adb (Analyze_Stream_TSS_Definition): New subprogram. (Analyze_Attribute_Definition_Clause, cases Input, Output, Read, Write): Factor common code across the stream-oriented attribute circcuits into a new subprogram, Analyze_Stream_TSS_Definition. The new uniform processing is functionally identical to the previous duplicated one, except that an expression that denotes an abstract subprogram will now be rejected, as mandated by AI-195 item 5. * sem_util.ads, sem_util.adb (Type_Access_Level): Use flag Is_Local_Anonymous_Access to apply accessibility checks to access components and stand-alone access objects. (Has_Discriminant_Dependent_Constraint): Moved to spec for use elsewhere. (Is_Potentially_Persistent_Type): New function (Is_Dependent_Component_Of_Mutable_Object): If the enclosing object is a heap-object whose type has a constrained partial view, the object is unconstrained and the component may depend on a discriminant, making its renaming illegal. * sinfo.ads, sinfo.adb (Must_Not_Override): Flag applicable to N_Entry_Declaration. (Must_Override): Flag applicable to N_Entry_Declaration. Indicate that interface_list can appear in single task and single protected declarations. Replace Is_Overriding and Not_Overriding with Must_Override and Must_Not_Override, to better express intent of AI. Is_Overriding, Not_Overriding: Ada2005 flags that indicate the presence of an overriding indicator in a subprogram or instance. Ada 2005 (AI-248) Null_Present can appear in a procedure specification. Add the overriding indicator [[not] overriding] construct to the following grammar productions: ENTRY_DECLARATION GENERIC_INSTANTIATION SUBPROGRAM_SPECIFICATION * par-ch10.adb (P_Compilation_Unit): Subprogram declaration or body can start with an overriding indicator. * par-ch6.adb (P_Subprogram): Recognize overriding indicator, and set flags accordingly on subrogram specifications or instances. * sem_ch8.adb: (Analyze_Subprogram_Renaming): For a renaming_as_body, verify that the overriding_indicator, if present, is consistent with status of spec. Improve error message for null-excluding checks on controlling access parameters. (Check_In_Previous_With_Clause): Protect the frontend against previously reported critical errors in the context clauses. Save and restore Ada_Version_Explicit, for implementation of AI-362 (Analyze_Subprogram_Renaming): If the new entity is a dispatching operation verify that controlling formals of the renamed entity that are access parameters are explicitly non-null. (Find_Expanded_Name): Improve error message when prefix is an illegal reference to a private child unit. * exp_imgv.adb, s-imgwch.ads, s-imgwch.adb, s-valwch.adb, s-valwch.ads, s-widwch.adb, s-widwch.ads, s-wwdcha.adb, s-wwdwch.adb: Rewrite to correspond to new wide character names in AI-395 * par-ch12.adb (P_Formal_Subprogram_Declaration): Recognize null default procedures. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101029 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ada/einfo.ads | 101 +++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 89 insertions(+), 12 deletions(-) (limited to 'gcc/ada/einfo.ads') diff --git a/gcc/ada/einfo.ads b/gcc/ada/einfo.ads index 8218d9c66c5..f6f87b4fdfc 100644 --- a/gcc/ada/einfo.ads +++ b/gcc/ada/einfo.ads @@ -115,7 +115,7 @@ package Einfo is -- There can only be a single statement, contained on a single line, -- not counting any pragma Assert statements. --- This single statement must either by a function call with simple, +-- This single statement must either be a function call with simple, -- single token arguments, or it must be a membership test of the form -- a in b, where a and b are single tokens. @@ -1281,6 +1281,12 @@ package Einfo is -- present for the given type. Note that this flag can be False even -- if Component_Size is non-zero (happens in the case of derived types). +-- Has_Constrained_Partial_View (Flag187) +-- Present in private type and their completions, when the private +-- type has no discriminants and the full view has discriminants with +-- defaults. In Ada 2005 heap-allocated objects of such types are not +-- constrained, and can change their discriminants with full assignment. + -- Has_Contiguous_Rep (Flag181) -- Present in enumeration types. True if the type as a representation -- clause whose entries are successive integers. @@ -1428,6 +1434,13 @@ package Einfo is -- 5. N_Range_Constraint - when the range expression uses the -- discriminant of the enclosing type. +-- Has_Persistent_BSS (Flag188) +-- Present in all entities. Set True for entities to which a valid +-- pragma Persistent_BSS applies. Note that although the pragma is +-- only meaningful for objects, we set it for all entities in a unit +-- to which the pragma applies, as well as the unit entity itself, for +-- convenience in propagating the flag to contained entities. + -- Has_Pragma_Controlled (Flag27) [implementation base type only] -- Present in access type entities. It is set if a pragma Controlled -- applies to the access type. @@ -1523,6 +1536,16 @@ package Einfo is -- representation clause, and thus is not inherited by a derived type. -- This flag is always False for non-record types. +-- Has_Specified_Stream_Input (Flag190) +-- Has_Specified_Stream_Output (Flag191) +-- Has_Specified_Stream_Read (Flag192) +-- Has_Specified_Stream_Write (Flag193) +-- Present in all type and subtype entities. Set for a given view if the +-- corresponding stream-oriented attribute has been defined by an +-- attribute definition clause. When such a clause occurs, a TSS is set +-- on the underlying full view; the flags are used to track visibility of +-- the attribute definition clause for partial or incomplete views. + -- Has_Storage_Size_Clause (Flag23) [implementation base type only] -- Present in task types and access types. It is set if a Storage_Size -- clause is present for the type. Used to prevent multiple clauses for @@ -1608,10 +1631,10 @@ package Einfo is -- Implementation_Base_Type (synthesized) -- Applies to all types. Similar to Base_Type, but never returns a -- private type when applied to a non-private type. Instead in this --- case, it always returns the Representation_Type of the base type --- in this case, so that we still have a concrete type. Note: it is --- allowed to apply Implementation_Base_Type to other than a type, --- in which case it simply returns the entity unchanged. +-- case, it always returns the Underlying_Type of the base type, so that +-- we still have a concrete type. Note: it is allowed to apply +-- Implementation_Base_Type to other than a type, in which case it +-- simply returns the entity unchanged. -- In_Package_Body (Flag48) -- Set on the entity that denotes the package (the defining occurrence @@ -1662,6 +1685,14 @@ package Einfo is -- Present in all types, and also for functions and procedures. Set -- for abstract types and abstract subprograms. +-- Is_Local_Anonymous_Access (Flag194) +-- Present in access types. Set for an anonymous access type to indicate +-- that the type is created for a record component with an access +-- definition, an array component, or a stand-alone object. Such +-- anonymous types have an accessibility level equal to that of the +-- declaration in which they appear, unlike the anonymous access types +-- that are created for access parameters and access discriminants. + -- Is_Access_Constant (Flag69) -- Present in access types and subtypes. Indicates that the keyword -- constant was present in the access type definition. @@ -1981,8 +2012,10 @@ package Einfo is -- Is_Internal (Flag17) -- Present in all entities. Set to indicate an entity created during --- semantic processing (e.g. an implicit type). Need more documentation --- on this one! ??? +-- semantic processing (e.g. an implicit type, or a temporary). The +-- only current use of this flag is to indicate that temporaries +-- generated for the result of an inlined function call need not be +-- initialized, even when scalars are initialized or normalized. -- Is_Interrupt_Handler (Flag89) -- Present in procedures. Set if a pragma Interrupt_Handler applies @@ -2124,8 +2157,8 @@ package Einfo is -- including generic formal parameters. -- Is_Obsolescent (Flag153) --- Present in subprogram entities. Set if a valid pragma Obsolescent --- applies to the subprogram. +-- Present in all entities. Set only for subprograms when a valid pragma +-- Obsolescent applies to the subprogram. -- Is_Optional_Parameter (Flag134) -- Present in parameter entities. Set if the parameter is specified as @@ -2252,6 +2285,11 @@ package Einfo is -- resulting from assignment to out parameters, or to objects designated -- by access parameters). +-- Is_Pure_Unit_Access_Type (Flag189) +-- Present in access type and subtype entities. Set if the type or +-- subtype appears in a pure unit. Used to give an error message at +-- freeze time if the access type has a storage pool. + -- Is_Real_Type (synthesized) -- Applies to all entities, true for real types and subtypes @@ -3933,7 +3971,7 @@ package Einfo is -- For each enumeration value defined in Entity_Kind we list all the -- attributes defined in Einfo which can legally be applied to an entity -- of that kind. The implementation of the attribute functions (and for - -- non-synthesized attributes, or the corresponding set procedures) are + -- non-synthetized attributes, of the corresponding set procedures) are -- in the Einfo body. -- The following attributes apply to all entities @@ -3958,6 +3996,7 @@ package Einfo is -- Has_Fully_Qualified_Name (Flag173) -- Has_Gigi_Rep_Item (Flag82) -- Has_Homonym (Flag56) + -- Has_Persistent_BSS (Flag188) -- Has_Pragma_Elaborate_Body (Flag150) -- Has_Pragma_Inline (Flag157) -- Has_Pragma_Unreferenced (Flag180) @@ -3987,6 +4026,7 @@ package Einfo is -- Is_Known_Valid (Flag170) -- Is_Limited_Composite (Flag106) -- Is_Limited_Record (Flag25) + -- Is_Obsolescent (Flag153) -- Is_Package_Body_Entity (Flag160) -- Is_Packed_Array_Type (Flag138) -- Is_Potentially_Use_Visible (Flag9) @@ -4037,12 +4077,17 @@ package Einfo is -- Has_Alignment_Clause (Flag46) -- Has_Atomic_Components (Flag86) (base type only) -- Has_Complex_Representation (Flag140) (base type only) + -- Has_Constrained_Partial_View (Flag187) -- Has_Discriminants (Flag5) -- Has_Non_Standard_Rep (Flag75) (base type only) -- Has_Object_Size_Clause (Flag172) -- Has_Primitive_Operations (Flag120) (base type only) -- Has_Size_Clause (Flag29) -- Has_Specified_Layout (Flag100) (base type only) + -- Has_Specified_Stream_Input (Flag190) + -- Has_Specified_Stream_Output (Flag191) + -- Has_Specified_Stream_Read (Flag192) + -- Has_Specified_Stream_Write (Flag193) -- Has_Task (Flag30) (base type only) -- Has_Unchecked_Union (Flag123) (base type only) -- Has_Volatile_Components (Flag87) (base type only) @@ -4110,7 +4155,9 @@ package Einfo is -- Associated_Final_Chain (Node23) -- Has_Pragma_Controlled (Flag27) (base type only) -- Has_Storage_Size_Clause (Flag23) (base type only) + -- Is_Local_Anonymous_Access (Flag194) -- Is_Access_Constant (Flag69) + -- Is_Pure_Unit_Access_Type (Flag189) -- No_Pool_Assigned (Flag131) (base type only) -- No_Strict_Aliasing (Flag136) (base type only) -- (plus type attributes) @@ -4376,7 +4423,6 @@ package Einfo is -- Is_Instantiated (Flag126) (generic case only) -- Is_Intrinsic_Subprogram (Flag64) -- Is_Machine_Code_Subprogram (Flag137) (non-generic case only) - -- Is_Obsolescent (Flag153) -- Is_Overriding_Operation (Flag39) (non-generic case only) -- Is_Private_Descendant (Flag53) -- Is_Pure (Flag44) @@ -4624,7 +4670,6 @@ package Einfo is -- Is_Intrinsic_Subprogram (Flag64) -- Is_Machine_Code_Subprogram (Flag137) (non-generic case only) -- Is_Null_Init_Proc (Flag178) - -- Is_Obsolescent (Flag153) -- Is_Overriding_Operation (Flag39) (non-generic case only) -- Is_Private_Descendant (Flag53) -- Is_Pure (Flag44) @@ -5142,6 +5187,7 @@ package Einfo is function Has_Completion_In_Body (Id : E) return B; function Has_Complex_Representation (Id : E) return B; function Has_Component_Size_Clause (Id : E) return B; + function Has_Constrained_Partial_View (Id : E) return B; function Has_Contiguous_Rep (Id : E) return B; function Has_Controlled_Component (Id : E) return B; function Has_Controlling_Result (Id : E) return B; @@ -5163,6 +5209,7 @@ package Einfo is function Has_Non_Standard_Rep (Id : E) return B; function Has_Object_Size_Clause (Id : E) return B; function Has_Per_Object_Constraint (Id : E) return B; + function Has_Persistent_BSS (Id : E) return B; function Has_Pragma_Controlled (Id : E) return B; function Has_Pragma_Elaborate_Body (Id : E) return B; function Has_Pragma_Inline (Id : E) return B; @@ -5176,6 +5223,10 @@ package Einfo is function Has_Size_Clause (Id : E) return B; function Has_Small_Clause (Id : E) return B; function Has_Specified_Layout (Id : E) return B; + function Has_Specified_Stream_Input (Id : E) return B; + function Has_Specified_Stream_Output (Id : E) return B; + function Has_Specified_Stream_Read (Id : E) return B; + function Has_Specified_Stream_Write (Id : E) return B; function Has_Storage_Size_Clause (Id : E) return B; function Has_Stream_Size_Clause (Id : E) return B; function Has_Subprogram_Descriptor (Id : E) return B; @@ -5193,6 +5244,7 @@ package Einfo is function Interface_Name (Id : E) return N; function Is_AST_Entry (Id : E) return B; function Is_Abstract (Id : E) return B; + function Is_Local_Anonymous_Access (Id : E) return B; function Is_Access_Constant (Id : E) return B; function Is_Ada_2005 (Id : E) return B; function Is_Aliased (Id : E) return B; @@ -5249,6 +5301,7 @@ package Einfo is function Is_Private_Descendant (Id : E) return B; function Is_Public (Id : E) return B; function Is_Pure (Id : E) return B; + function Is_Pure_Unit_Access_Type (Id : E) return B; function Is_Remote_Call_Interface (Id : E) return B; function Is_Remote_Types (Id : E) return B; function Is_Renaming_Of_Object (Id : E) return B; @@ -5621,6 +5674,7 @@ package Einfo is procedure Set_Has_Completion_In_Body (Id : E; V : B := True); procedure Set_Has_Complex_Representation (Id : E; V : B := True); procedure Set_Has_Component_Size_Clause (Id : E; V : B := True); + procedure Set_Has_Constrained_Partial_View (Id : E; V : B := True); procedure Set_Has_Contiguous_Rep (Id : E; V : B := True); procedure Set_Has_Controlled_Component (Id : E; V : B := True); procedure Set_Has_Controlling_Result (Id : E; V : B := True); @@ -5641,6 +5695,7 @@ package Einfo is procedure Set_Has_Non_Standard_Rep (Id : E; V : B := True); procedure Set_Has_Object_Size_Clause (Id : E; V : B := True); procedure Set_Has_Per_Object_Constraint (Id : E; V : B := True); + procedure Set_Has_Persistent_BSS (Id : E; V : B := True); procedure Set_Has_Pragma_Controlled (Id : E; V : B := True); procedure Set_Has_Pragma_Elaborate_Body (Id : E; V : B := True); procedure Set_Has_Pragma_Inline (Id : E; V : B := True); @@ -5655,6 +5710,10 @@ package Einfo is procedure Set_Has_Size_Clause (Id : E; V : B := True); procedure Set_Has_Small_Clause (Id : E; V : B := True); procedure Set_Has_Specified_Layout (Id : E; V : B := True); + procedure Set_Has_Specified_Stream_Input (Id : E; V : B := True); + procedure Set_Has_Specified_Stream_Output (Id : E; V : B := True); + procedure Set_Has_Specified_Stream_Read (Id : E; V : B := True); + procedure Set_Has_Specified_Stream_Write (Id : E; V : B := True); procedure Set_Has_Storage_Size_Clause (Id : E; V : B := True); procedure Set_Has_Stream_Size_Clause (Id : E; V : B := True); procedure Set_Has_Subprogram_Descriptor (Id : E; V : B := True); @@ -5672,6 +5731,7 @@ package Einfo is procedure Set_Interface_Name (Id : E; V : N); procedure Set_Is_AST_Entry (Id : E; V : B := True); procedure Set_Is_Abstract (Id : E; V : B := True); + procedure Set_Is_Local_Anonymous_Access (Id : E; V : B := True); procedure Set_Is_Access_Constant (Id : E; V : B := True); procedure Set_Is_Ada_2005 (Id : E; V : B := True); procedure Set_Is_Aliased (Id : E; V : B := True); @@ -5734,6 +5794,7 @@ package Einfo is procedure Set_Is_Private_Descendant (Id : E; V : B := True); procedure Set_Is_Public (Id : E; V : B := True); procedure Set_Is_Pure (Id : E; V : B := True); + procedure Set_Is_Pure_Unit_Access_Type (Id : E; V : B := True); procedure Set_Is_Remote_Call_Interface (Id : E; V : B := True); procedure Set_Is_Remote_Types (Id : E; V : B := True); procedure Set_Is_Renaming_Of_Object (Id : E; V : B := True); @@ -6155,6 +6216,7 @@ package Einfo is pragma Inline (Has_Completion_In_Body); pragma Inline (Has_Complex_Representation); pragma Inline (Has_Component_Size_Clause); + pragma Inline (Has_Constrained_Partial_View); pragma Inline (Has_Contiguous_Rep); pragma Inline (Has_Controlled_Component); pragma Inline (Has_Controlling_Result); @@ -6175,6 +6237,7 @@ package Einfo is pragma Inline (Has_Non_Standard_Rep); pragma Inline (Has_Object_Size_Clause); pragma Inline (Has_Per_Object_Constraint); + pragma Inline (Has_Persistent_BSS); pragma Inline (Has_Pragma_Controlled); pragma Inline (Has_Pragma_Elaborate_Body); pragma Inline (Has_Pragma_Inline); @@ -6189,6 +6252,10 @@ package Einfo is pragma Inline (Has_Size_Clause); pragma Inline (Has_Small_Clause); pragma Inline (Has_Specified_Layout); + pragma Inline (Has_Specified_Stream_Input); + pragma Inline (Has_Specified_Stream_Output); + pragma Inline (Has_Specified_Stream_Read); + pragma Inline (Has_Specified_Stream_Write); pragma Inline (Has_Storage_Size_Clause); pragma Inline (Has_Stream_Size_Clause); pragma Inline (Has_Subprogram_Descriptor); @@ -6206,6 +6273,7 @@ package Einfo is pragma Inline (Interface_Name); pragma Inline (Is_AST_Entry); pragma Inline (Is_Abstract); + pragma Inline (Is_Local_Anonymous_Access); pragma Inline (Is_Access_Constant); pragma Inline (Is_Ada_2005); pragma Inline (Is_Access_Type); @@ -6296,6 +6364,7 @@ package Einfo is pragma Inline (Is_Protected_Type); pragma Inline (Is_Public); pragma Inline (Is_Pure); + pragma Inline (Is_Pure_Unit_Access_Type); pragma Inline (Is_Real_Type); pragma Inline (Is_Record_Type); pragma Inline (Is_Remote_Call_Interface); @@ -6506,6 +6575,7 @@ package Einfo is pragma Inline (Set_Has_Completion_In_Body); pragma Inline (Set_Has_Complex_Representation); pragma Inline (Set_Has_Component_Size_Clause); + pragma Inline (Set_Has_Constrained_Partial_View); pragma Inline (Set_Has_Contiguous_Rep); pragma Inline (Set_Has_Controlled_Component); pragma Inline (Set_Has_Controlling_Result); @@ -6526,6 +6596,7 @@ package Einfo is pragma Inline (Set_Has_Non_Standard_Rep); pragma Inline (Set_Has_Object_Size_Clause); pragma Inline (Set_Has_Per_Object_Constraint); + pragma Inline (Set_Has_Persistent_BSS); pragma Inline (Set_Has_Pragma_Controlled); pragma Inline (Set_Has_Pragma_Elaborate_Body); pragma Inline (Set_Has_Pragma_Inline); @@ -6540,6 +6611,10 @@ package Einfo is pragma Inline (Set_Has_Size_Clause); pragma Inline (Set_Has_Small_Clause); pragma Inline (Set_Has_Specified_Layout); + pragma Inline (Set_Has_Specified_Stream_Input); + pragma Inline (Set_Has_Specified_Stream_Output); + pragma Inline (Set_Has_Specified_Stream_Read); + pragma Inline (Set_Has_Specified_Stream_Write); pragma Inline (Set_Has_Storage_Size_Clause); pragma Inline (Set_Has_Subprogram_Descriptor); pragma Inline (Set_Has_Task); @@ -6556,6 +6631,7 @@ package Einfo is pragma Inline (Set_Interface_Name); pragma Inline (Set_Is_AST_Entry); pragma Inline (Set_Is_Abstract); + pragma Inline (Set_Is_Local_Anonymous_Access); pragma Inline (Set_Is_Access_Constant); pragma Inline (Set_Is_Ada_2005); pragma Inline (Set_Is_Aliased); @@ -6618,6 +6694,7 @@ package Einfo is pragma Inline (Set_Is_Private_Descendant); pragma Inline (Set_Is_Public); pragma Inline (Set_Is_Pure); + pragma Inline (Set_Is_Pure_Unit_Access_Type); pragma Inline (Set_Is_Remote_Call_Interface); pragma Inline (Set_Is_Remote_Types); pragma Inline (Set_Is_Renaming_Of_Object); -- cgit v1.2.1