VHDL Issue Number: 1027 Classification: Language Definition Problem Language Version: VHDL-93 Summary: REVERSERANGE should be a keyword in the language. Related Issues: 0132 Relevant LRM Sections: 13.9, 14.1 Key Words and Phrases: Current Status: Analyzed 1076-1993 Disposition: N/A Disposition Rationale: N/A Superseded By: N/A ----------------------- Date Submitted: 1989/06/21 Author of Submission: Rod Farrow Author's Affiliation: Vantage Analysis Systems, Inc. Author's Post Address: 42840 Christy St., Suite 201 Fremont, CA 94538 Author's Phone Number: (415) 659-0901 Author's Fax Number: Author's Net Address: N/A ----------------------- Date Analyzed: 1994/07/25 Author of Analysis: John Willis Revision Number: $Revision: 1.2 $ Date Last Revised: $Date: 1995/05/15 19:09:55 $ Description of Problem ---------------------- (This IR supersedes IR 0132.) Identifier REVERSE_RANGE should be a keyword of the language, as is RANGE, in order to prevent it from being redefined to be something else, especially to keep it from being redefined to be a user-defined attribute. This is an acute implementation problem in the following context: X( A'REVERSE_RANGE ) would be an array reference if REVERSE_RANGE has been declared as a user- defined attribute and has been specified for A, otherwise it could be a slice if A is an array object. Proposed Resolution ------------------- Make REVERSE_RANGE a reserved word in the language. VASG-ISAC Analysis & Rationale ------------------------------ Note: The problem description above was altered to read "REVERSE_RANGE" rather than "REVERSERANGE" as submitted. This seems like an example of a more general case in which an expression is ambiguous. It seems like creating a user-defined attribute with the same name as a predefined attribute is a bad practice, however the LRM seems to deal elsewhere with ambiguous expressions. This special case does not seem to warrant an additional reserved word. If "reverse_range" were added as a keyword, why not "LEFT", "RIGHT", etc. VASG-ISAC Recommendation for IEEE Std 1076-1993 ----------------------------------------------- ISAC might want to consider a note warning users of this pitfall. VASG-ISAC Recommendation for Future Revisions --------------------------------------------- Future revisions might want to consider a note warning users of this pitfall.