The list of ieee packages that the functions are considered locally static have been update.
The restriction that the functions be pure has also been added.
Regards,
John
-- -- mailto: johnr@model.com phone: (503)685-0864 -- http://www.model.com fax: (503)685-0921 --
IEEE 200X Fast Track Change Proposal
ID: FT-23
Proposer: John Ries
email: johnr@model.com
Status: Open
Proposed: 04/20/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 and numeric_std
package 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, or ieee.numeric_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 to a pure function whose function name denotes
an operator or function that is declared in one of the following packages
defined in the library ieee : std_logic_1164,.numeric_std, numeric_bit,
numeric_unsigned, and 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]
Received on Mon Nov 15 16:32:05 2004
This archive was generated by hypermail 2.1.8 : Mon Nov 15 2004 - 16:32:07 PST