VHDL Issue Number: 0015 Classification: Language Definition Problem Language Version: VHDL-87 Summary: Bounds and direction of certain unconstrained formals are undefined Related Issues: Relevant LRM Sections: 3.2.1.1 Key Words and Phrases: Unconstrained formals, subelement association Current Status: ISAC-Approved 1076-1993 Disposition: Closed (All Issues Completely Addressed) Disposition Rationale: LRM is clear now. Superseded By: N/A ----------------------- Date Submitted: 1989/02/10 Author of Submission: Doug Dunlop Author's Affiliation: Intermetrics, Inc. Author's Post Address: 4733 Bethesda Ave #415 Bethesda, MD 20814 Author's Phone Number: (301) 657-3775 Author's Fax Number: Author's Net Address: dunlop@inmet.inmet.com ----------------------- Date Analyzed: 1991/01/15 Author of Analysis: Chuck Swart Revision Number: $Revision: 1.10 $ Date Last Revised: $Date: 1995/05/13 19:34:42 $ Description of Problem ---------------------- LRM 3.2.1.1 defines the index range of an unconstrained formal to be taken from the "corresponding association element". This definition is not applicable if the subelements of the formal are associated on an individual basis. At one time it was the intent of CLSI to disallow subelement associations for an unconstrained formal. It is probably an oversight that this is not disallowed. Proposed Resolution ------------------- Assume that an unconstrained formal cannot have its subelements associated on an individual basis. VASG-ISAC Analysis & Rationale ------------------------------ The LRM does not specifically address the issue of whether an unconstrained formal (or local) can have its subelements associated on an individual basis. Some implementors have inferred that subelement association is allowable in this situation; others have concluded that it is illegal. So, for VHDL87, the use of such constructs may result in nonportable code. However, there is agreement that it is reasonable to allow subelement association in these cases. Therefore, language should be added to the next LRM revision to allow this. VASG-ISAC Recommendation for IEEE Std 1076-1987 ----------------------------------------------- Not all implementations support subelement association for unconstrained formals or locals. Therefore, the use of such an association is nonportable. VASG-ISAC Recommendation for Future Revisions --------------------------------------------- Add appropriate wording to the LRM to the effect that subelement association is allowed when the formal (or local) parameters are unconstrained arrays, and that in such cases the direction of the range is that of the type of the formal (or local) parameter and that the high and low bounds are determined from the maximum and minimum indexes given in the subelement association.