!standard 15.17 06-09-25 SI99-0021-1/01 !class binding interpretation !status work item 06-09-25 !status received 06-09-25 !priority High !difficulty Easy !qualifier Omission !subject Obtain representation clauses based on defining identifiers, not declarations !summary Add support to query representation clauses applying to a defining name. !question The query Corresponding_Representation_Clauses applies to a declaration. ASIS 15.17 says: "Returns all representation_clause elements that apply to the declaration." However, consider: A, B : Integer; -- (1) for A'Address use Foo; -- (2) It is not clear what should be returned by Corresponding_Representation_Clause when applied to the declaration at (1). Moreover, whatever is returned will be wrong, either when applied to the Corresponding_Name_Declaration of A, or to the Corresponding_Name_Declaration of B. Clearly, a representation clause does not apply to a declaration, but to an element. To avoid problems with views etc., it is suggested to have a similar query applying to a defining name. !recommendation (See summary.) !wording * Add the following query to Asis.Elements after 15.17: function Corresponding_Element_Representation_Clauses (Defining_Name : in Asis.Defining_Name) return Asis.Representation_Clause_List; ------------------------------------------------------------------------------ -- Defining_Name - Specifies the defining name to query -- -- Returns all representation_clause elements that apply to the named entity. -- -- Returns a Nil_Element_List if no clauses apply to the named entity. -- -- Returns Clause_Kinds: -- A_Representation_Clause !discussion !appendix ****************************************************************