From rybin@possum.srcc.msu.su Wed Dec 17 14:19:08 1997 Return-Path: Received: from cs.ida.org by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id OAA11488; Wed, 17 Dec 1997 14:19:08 -0500 Received: from crocus.gamma.ru (crocus.gamma.ru [193.124.255.1]) by cs.ida.org (8.8.7/8.8.7) with ESMTP id OAA02789 for ; Wed, 17 Dec 1997 14:20:18 -0500 (EST) Received: from srcc.UUCP (uucp@localhost) by crocus.gamma.ru (8.8.5/8.7.3) with UUCP id WAA16820; Wed, 17 Dec 1997 22:20:09 +0300 (MSK) Received: by gamma.srcc.msu.su; Wed, 17 Dec 1997 22:19:39 +0300 Received: by possum.srcc.msu.su (UUPC/@ v5.09gamma, 14Mar93); Wed, 17 Dec 1997 22:21:32 +0300 To: roby@ida.org, rybin@possum.srcc.msu.su Cc: Colket@ACM.Org References: <199712092225.RAA06766@cronus.csed.ida.org> Message-Id: Organization: Information Systems, SRCC, MSU From: "Sergey I. Rybin" Date: Wed, 17 Dec 97 22:21:32 +0300 X-Mailer: BML [MS/DOS Beauty Mail v.1.36] Subject: Re: Nil_Element as Corresponding_Expression_Type Lines: 47 Content-Length: 2261 Status: OR > > I think, there is a hole in the description of the situations, > > when Nil_Element shoudl be returned by Corresponding_Expression_Type. > > > > Nil_Element should also be returned for an enumeration_aggregate > > which is a part of enumeration_representation_clause. > > > > May be, for some other kinds of expressions returned by > > Asis.Clauses.Representation_Clause_Expression Nil_Element should be > > returned as its type, but I've not made the full analyziz yet. > > Have you had an opportunity to do the analysis on this yet? > We would like to turn this into an issue with appropriate > supporting email information. No, I've not done the _full_ analysis so far. I would reformulate the issue into a problem of clarifying the documentation of Asis.Expressions.Corresponding_Expression_Type. I think, it would hardly make sense to describe _all_ the situations when Nil_Element should be returned by this function. I would prefer to stress the general rule - to return Nil_Element in case when an ASIS An_Expression Element actually does not represent an Ada expression having an Ada type. And I would only point out some important cases when Nil_Element should be returned, without carying too much about the completeness of this list, and without pretending to prrovide the complete list (of course, it requires careful wording and something better, then my English :). Here is some draft wording for reformulating 17.1:: -- Returns a Nil_Element if the argument Expression does not represent an Ada -- expression having an Ada typef, including the the following classes: -- -- - Naming expressions that name packages, subprograms, tasks, etc. These -- expressions do have a Corresponding_Name_Definition and a -- Corresponding_Name_Declaration. -- -- - When An_Identifier Element representing an attribute designator is passed -- as the actual to this query. -- -- - The Actual_Parameter Expression from A_Pragma_Argument_Association for a -- Pragma may or may not have a Corresponding_Expression_Type. -- -- - An_Attribute_Reference Element also may or may not have a -- Corresponding_Expression_Type; -- -- - an enumeration_aggregate which is a part of enumeration_representation_clause Sergey From rybin@possum.srcc.msu.su Thu Nov 6 03:14:38 1997 Return-Path: Received: from ida.org by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id DAA14796; Thu, 6 Nov 1997 03:14:38 -0500 Received: from mail.acm.org by ida.org (4.1/SMI-4.1) id AA13923; Thu, 6 Nov 97 03:15:18 EST Received: from sw-eng.falls-church.va.us (ns1.sw-eng.falls-church.va.us [199.75.54.2]) by mail.acm.org (8.8.5/8.7.5) with ESMTP id DAA27514; Thu, 6 Nov 1997 03:18:20 -0500 Received: from crocus.gamma.ru by sw-eng.falls-church.va.us (8.7.1/) id IAA18130; Thu, 6 Nov 1997 08:10:50 GMT Received: from srcc.UUCP (uucp@localhost) by crocus.gamma.ru (8.8.5/8.7.3) with UUCP id LAA29297 for asis-comment@sw-eng.falls-church.va.us; Thu, 6 Nov 1997 11:14:04 +0300 (MSK) Received: by gamma.srcc.msu.su; Thu, 6 Nov 1997 11:13:02 +0300 Received: by possum.srcc.msu.su (UUPC/@ v5.09gamma, 14Mar93); Thu, 6 Nov 1997 11:08:31 +0300 To: asis-comment@sw-eng.falls-church.va.us Message-Id: Organization: Information Systems, SRCC, MSU From: "Sergey I. Rybin" Date: Thu, 6 Nov 97 11:08:31 +0300 X-Mailer: BML [MS/DOS Beauty Mail v.1.36] Subject: Nil_Element as Corresponding_Expression_Type Lines: 11 Content-Length: 449 Status: OR I think, there is a hole in the description of the situations, when Nil_Element shoudl be returned by Corresponding_Expression_Type. Nil_Element should also be returned for an enumeration_aggregate which is a part of enumeration_representation_clause. May be, for some other kinds of expressions returned by Asis.Clauses.Representation_Clause_Expression Nil_Element should be returned as its type, but I've not made the full analyziz yet. Sergey From roby Tue Dec 9 17:25:54 1997 Return-Path: Received: by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id RAA06766; Tue, 9 Dec 1997 17:25:52 -0500 From: roby (Clyde Roby) Message-Id: <199712092225.RAA06766@cronus.csed.ida.org> Subject: Re: Nil_Element as Corresponding_Expression_Type To: rybin@possum.srcc.msu.su (Sergey I. Rybin) Date: Tue, 9 Dec 1997 17:25:52 -0500 (EST) Cc: roby (me), Colket@ACM.Org (Currie Colket) In-Reply-To: from "Sergey I. Rybin" at Nov 6, 97 11:08:31 am X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 635 Status: OR Sergey, > I think, there is a hole in the description of the situations, > when Nil_Element shoudl be returned by Corresponding_Expression_Type. > > Nil_Element should also be returned for an enumeration_aggregate > which is a part of enumeration_representation_clause. > > May be, for some other kinds of expressions returned by > Asis.Clauses.Representation_Clause_Expression Nil_Element should be > returned as its type, but I've not made the full analyziz yet. Have you had an opportunity to do the analysis on this yet? We would like to turn this into an issue with appropriate supporting email information. Clyde and Currie From roby Wed Jan 14 15:44:19 1998 Return-Path: Received: by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id PAA10304; Wed, 14 Jan 1998 15:44:17 -0500 From: roby (Clyde Roby) Message-Id: <199801142044.PAA10304@cronus.csed.ida.org> Subject: Re: Nil_Element as Corresponding_Expression_Type To: rybin@possum.srcc.msu.su (Sergey I. Rybin) Date: Wed, 14 Jan 1998 15:44:17 -0500 (EST) Cc: roby (me), Colket@ACM.Org (Currie Colket) In-Reply-To: from "Sergey I. Rybin" at Dec 17, 97 10:21:32 pm X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 3332 Status: OR Sergey, We have reformulated your email reply (which includes your original email message) into Issue #088, included below. Does this issue statement correctly identify the problem? Also, we have included your proposed solution (in the message below). Please look these over to make sure that nothing is missing. In the original 17.1, the following statement is present: -- Returns a Nil_Element, if statically determinable type of Expression is a -- class-wide type. This still appears to be necessary. Should this be included in the list? Or, maintained as a separate statement after the proposed paragraph? Thank you. Clyde and Currie ------- !ASIS Issue #088 !topic Nil_Element as Corresponding_Expression_Type !reference ASIS 95-17.1 !from Sergey Rybin 98-01-14 !keywords Nil_Element Corresponding_Expression_Type expression type !discussion There are additional situations where Nil_Element should be returned by Corresponding_Expression_Type. Nil_Element should be returned for an enumeration_aggregate which is part of enumeration_representation_clause. There may be other kinds of expressions where Nil_Element should be returned. A general rule should be provided in the ASIS specification for the return of Nil_Element in the case when an Expression actually does not represent an Ada expression having an Ada type. I would only point out some important cases when Nil_Element should be returned, without caring too much about the completeness of this list, and without pretending to provide the complete list. !resolution Open !date 98-01-14 !Notes ------- PROPOSED SOLUTION: Replace the following from Clause 17.1: -- Returns a Nil_Element for the following classes of expressions that do not -- have a Corresponding_Expression_Type: -- -- - Naming expressions that name packages, subprograms, tasks, etc. These -- expressions do have a Corresponding_Name_Definition and a -- Corresponding_Name_Declaration. -- -- - When An_Identifier Element representing an attribute designator is passed -- as the actual to this query. -- -- - The Actual_Parameter Expression from A_Pragma_Argument_Association for a -- Pragma may or may not have a Corresponding_Expression_Type. If the -- returned declaration is non-nil then the Expression is either: -- -- a) an ordinary expression, or -- b) a naming expression that names a constant or variable object. -- -- Returns a Nil_Element, if statically determinable type of Expression is a -- class-wide type. with: -- Returns a Nil_Element if the argument Expression does not represent an Ada -- expression having an Ada type, including the the following classes: -- -- - Naming expressions that name packages, subprograms, tasks, etc. These -- expressions do have a Corresponding_Name_Definition and a -- Corresponding_Name_Declaration. -- -- - When An_Identifier Element representing an attribute designator is passed -- as the actual to this query. -- -- - The Actual_Parameter Expression from A_Pragma_Argument_Association for a -- Pragma may or may not have a Corresponding_Expression_Type. -- -- - An_Attribute_Reference Element also may or may not have a -- Corresponding_Expression_Type; -- -- - An enumeration_aggregate which is a part of -- enumeration_representation_clause. ------- From rybin@possum.srcc.msu.su Thu Jan 15 02:09:27 1998 Return-Path: Received: from cs.ida.org by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id CAA11104; Thu, 15 Jan 1998 02:09:27 -0500 Received: from crocus.gamma.ru (crocus.gamma.ru [193.124.255.1]) by cs.ida.org (8.8.7/8.8.7) with ESMTP id CAA22083 for ; Thu, 15 Jan 1998 02:10:37 -0500 (EST) Received: from srcc.UUCP (uucp@localhost) by crocus.gamma.ru (8.8.7/8.7.3) with UUCP id KAA05418; Thu, 15 Jan 1998 10:10:19 +0300 (MSK) Received: by gamma.srcc.msu.su; Thu, 15 Jan 1998 10:09:00 +0300 Received: by possum.srcc.msu.su (UUPC/@ v5.09gamma, 14Mar93); Thu, 15 Jan 1998 09:44:40 +0300 To: roby@ida.org, rybin@possum.srcc.msu.su Cc: Colket@ACM.Org References: <199801142044.PAA10304@cronus.csed.ida.org> Message-Id: Organization: Information Systems, SRCC, MSU From: "Sergey I. Rybin" Date: Thu, 15 Jan 98 09:44:40 +0300 X-Mailer: BML [MS/DOS Beauty Mail v.1.36] Subject: Re: Nil_Element as Corresponding_Expression_Type Lines: 30 Content-Length: 1035 Status: OR Clyde, Currie, > We have reformulated your email reply (which includes your > original email message) into Issue #088, included below. Does this > issue statement correctly identify the problem? Also, we have > included your proposed solution (in the message below). Please look > these over to make sure that nothing is missing. Everything seems to be in place. > > In the original 17.1, the following statement is present: > > -- Returns a Nil_Element, if statically determinable type of Expression is a > -- class-wide type. > > This still appears to be necessary. I agree. It was missed im my proposal, and this was a mistake. > Should this be included in the > list? Or, maintained as a separate statement after the proposed > paragraph? Probably, it should be a separate statement after the list, as indicating a very important case when Nil_Element should be returned for "real" expression, which actually has a type in Ada, but this type cannot be represented in ASIS. Sergey From roby Thu Feb 12 15:06:21 1998 Return-Path: Received: by cronus.csed.ida.org (SMI-8.6/SMI-SVR4) id PAA21757; Thu, 12 Feb 1998 15:06:20 -0500 From: roby (Clyde Roby) Message-Id: <199802122006.PAA21757@cronus.csed.ida.org> Subject: Re: Nil_Element as Corresponding_Expression_Type To: rybin@gnat.com (Sergey Rybin) Date: Thu, 12 Feb 1998 15:06:20 -0500 (EST) Cc: roby (Clyde Roby), Colket@ACM.Org (Currie Colket) X-Mailer: ELM [version 2.4 PL25] MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Content-Length: 2946 Status: OR Sergey, We've updated the proposed solution to Issue #088 (see below) in response to your latest email message regarding this issue. Thank you. Clyde and Currie ------- !ASIS Issue #088 !topic Nil_Element as Corresponding_Expression_Type !reference ASIS 95-17.1 !from Sergey Rybin 98-01-14 !keywords Nil_Element Corresponding_Expression_Type expression type !discussion There are additional situations where Nil_Element should be returned by Corresponding_Expression_Type. Nil_Element should be returned for an enumeration_aggregate which is part of enumeration_representation_clause. There may be other kinds of expressions where Nil_Element should be returned. A general rule should be provided in the ASIS specification for the return of Nil_Element in the case when an Expression actually does not represent an Ada expression having an Ada type. I would only point out some important cases when Nil_Element should be returned, without caring too much about the completeness of this list, and without pretending to provide the complete list. !resolution Open !date 98-01-14 !Notes ------- PROPOSED SOLUTION: Replace the following from Clause 17.1: -- Returns a Nil_Element for the following classes of expressions that do not -- have a Corresponding_Expression_Type: -- -- - Naming expressions that name packages, subprograms, tasks, etc. These -- expressions do have a Corresponding_Name_Definition and a -- Corresponding_Name_Declaration. -- -- - When An_Identifier Element representing an attribute designator is passed -- as the actual to this query. -- -- - The Actual_Parameter Expression from A_Pragma_Argument_Association for a -- Pragma may or may not have a Corresponding_Expression_Type. If the -- returned declaration is non-nil then the Expression is either: -- -- a) an ordinary expression, or -- b) a naming expression that names a constant or variable object. -- -- Returns a Nil_Element, if statically determinable type of Expression is a -- class-wide type. with: -- Returns a Nil_Element if the argument Expression does not represent an Ada -- expression having an Ada type, including the the following classes: -- -- - Naming expressions that name packages, subprograms, tasks, etc. These -- expressions do have a Corresponding_Name_Definition and a -- Corresponding_Name_Declaration. -- -- - When An_Identifier Element representing an attribute designator is passed -- as the actual to this query. -- -- - The Actual_Parameter Expression from A_Pragma_Argument_Association for a -- Pragma may or may not have a Corresponding_Expression_Type. -- -- - An_Attribute_Reference Element also may or may not have a -- Corresponding_Expression_Type; -- -- - An enumeration_aggregate which is a part of -- enumeration_representation_clause. -- -- Returns a Nil_Element, if statically determinable type of Expression is a -- class-wide type. -------