IEEE 200X Fast Track Change Proposal ID: FT-23 Proposer: John Ries email: johnr@model.com Status: Open Proposed: 04/20/04 Modified: 02/15/04 Analyzed: Date Resolved: Date Enhancement Summary: Allow operations on std_logic and std_logic_vectors to be considered locally static. Related issues: Relevant LRM section: 7.4.1 Enhancement Detail: ---------------------------- Locally static expressions are defined by a list, a through j, in section 7.4.1. There is an additional restriction that an expression is locally static if and only if every operator in the expression denotes an implicitly defined operator whose operands and result are scalar. Now that the std_logic_1164 and numeric_bit, numeric_std, numeric_unsigned, and numeric_unsigned_bit packages are part of the standard I propose the following change. Original: "An expression is said to be locally static if and only if every operator in the expression denotes an implicitly defined operator whose operands and result are scalar and if every primary in the expression is a locally static primary, where locally static primary is defined to be one of the following:" Modified: "An expression is said to be locally static if and only if every operator in the expression denotes an implicitly defined operator or an operator defined in the packages ieee.std_logic_1164, ieee.numeric_std, ieee.numeric_bit, ieee.numeric_unsigned, or ieee.numeric_unsigned_bit whose operands and result are scalar and if every primary in the expression is a locally static primary, where locally static primary is defined to be one of the following:" Also an additional item, k, would be added to the list defining a locally static primary. "k) A function call whose function name denotes an operator or function that is declared in one of the following packages, ieee.std_logic_1164, ieee.numeric_std, ieee.numeric_bit, ieee.numeric_unsigned, or ieee.numeric_unsigned_bit. Any actual parameters to the function must each be locally static expressions." Since most usefully functions in the packages std_logic_1164, numeric_bit and numeric_std operate on arrays, we need to allow for array operands and array operands to be considered locally static. Analysis: ---------------------------- [To be performed by the 200X Fast Track Working Group] Resolution: ---------------------------- [To be performed by the 200X Fast Track Working Group]