diff options
author | Tristan Gingold <tgingold@free.fr> | 2022-04-27 05:38:19 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2022-04-27 05:41:58 +0200 |
commit | 2e285fc8bbae38105fb632e02527675498bbcc13 (patch) | |
tree | 9debc45ca57603424543b1f92cc0d8cd5634a7b9 /src/vhdl | |
parent | 341c34e2fee520253a3da19b599c44b8f50a706d (diff) | |
download | ghdl-2e285fc8bbae38105fb632e02527675498bbcc13.tar.gz ghdl-2e285fc8bbae38105fb632e02527675498bbcc13.tar.bz2 ghdl-2e285fc8bbae38105fb632e02527675498bbcc13.zip |
vhdl-sem_expr: add a comment
Diffstat (limited to 'src/vhdl')
-rw-r--r-- | src/vhdl/vhdl-sem_expr.adb | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/vhdl/vhdl-sem_expr.adb b/src/vhdl/vhdl-sem_expr.adb index 9bc64b959..9a70867fe 100644 --- a/src/vhdl/vhdl-sem_expr.adb +++ b/src/vhdl/vhdl-sem_expr.adb @@ -923,6 +923,27 @@ package body Vhdl.Sem_Expr is -- 9. a function call whose function name denotes a pure function, -- and whose actual parameters are each globally static -- expressions. + -- + -- LRM08 9.4.2 Locally statuc primaries + -- [...] if every operator in the expression denotes [...] an operator + -- defined in one of the packages STD_LOGIC_1164, NUMERIC_BIT, + -- NUMERIC_STD, NUMERIC_BIT_UNSIGNED or NUMERIC_STD_UNSIGNED in library + -- IEEE, and if every primary in the expression is a locally static + -- primary, where a locally static primary is defined to be one of the + -- following: + -- [...] + -- e) A function call whose function name denotes an implicitely + -- defined operation or an operation defined in one of the packages + -- STD_LOGIC_1164, NUMERIC_BIT, NUMERIC_STD, NUMERIC_BIT_UNSIGNED, + -- or NUMERIC_STD_UNSIGNED in library IEEE and whose actual + -- parameters are each locally static expressions. + -- + -- GHDL note: operation is defined in: + -- LRM08 5 Types + -- The set of operations of a type includes the explicitly declared + -- subprograms that have a parameter of result of the type. The + -- remaining operations of a type are the basic operations and the + -- predefined operations. case Get_Kind (Expr) is when Iir_Kinds_Monadic_Operator => Staticness := Get_Expr_Staticness (Get_Operand (Expr)); |