aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--python/libghdl/thin/errorout.py9
-rw-r--r--python/libghdl/thin/std_names.py443
-rw-r--r--src/std_names.adb18
-rw-r--r--src/std_names.ads98
4 files changed, 289 insertions, 279 deletions
diff --git a/python/libghdl/thin/errorout.py b/python/libghdl/thin/errorout.py
index 58ba48f4d..cbe6d030e 100644
--- a/python/libghdl/thin/errorout.py
+++ b/python/libghdl/thin/errorout.py
@@ -30,7 +30,8 @@ class Msgid:
Warnid_Others = 22
Warnid_Pure = 23
Warnid_Analyze_Assert = 24
- Warnid_Static = 25
- Msgid_Warning = 26
- Msgid_Error = 27
- Msgid_Fatal = 28
+ Warnid_Attribute = 25
+ Warnid_Static = 26
+ Msgid_Warning = 27
+ Msgid_Error = 28
+ Msgid_Fatal = 29
diff --git a/python/libghdl/thin/std_names.py b/python/libghdl/thin/std_names.py
index faa0e84c1..9ae16a255 100644
--- a/python/libghdl/thin/std_names.py
+++ b/python/libghdl/thin/std_names.py
@@ -562,225 +562,228 @@ class Name:
Built_In = 778
NNone = 779
Last_Misc = 779
- First_Ieee = 780
+ First_Ieee_Pkg = 780
Ieee = 780
Std_Logic_1164 = 781
- Std_Ulogic = 782
- Std_Ulogic_Vector = 783
- Std_Logic = 784
- Std_Logic_Vector = 785
- Rising_Edge = 786
- Falling_Edge = 787
- VITAL_Timing = 788
- VITAL_Level0 = 789
- VITAL_Level1 = 790
- Numeric_Std = 791
- Numeric_Bit = 792
- Unresolved_Unsigned = 793
- Unresolved_Signed = 794
- Std_Logic_Arith = 795
- Std_Logic_Signed = 796
- Std_Logic_Unsigned = 797
- Std_Logic_Textio = 798
- To_Integer = 799
- To_Unsigned = 800
- To_Signed = 801
- Resize = 802
- Std_Match = 803
- Shift_Left = 804
- Shift_Right = 805
- Rotate_Left = 806
- Rotate_Right = 807
- To_Bit = 808
- To_Bitvector = 809
- To_Stdulogic = 810
- To_Stdlogicvector = 811
- To_Stdulogicvector = 812
- Is_X = 813
- Conv_Signed = 814
- Conv_Unsigned = 815
- Conv_Integer = 816
- Math_Real = 817
- Ceil = 818
- Round = 819
- Log2 = 820
- Sin = 821
- Cos = 822
- Last_Ieee = 822
- First_Synthesis = 823
- Allconst = 823
- Allseq = 824
- Anyconst = 825
- Anyseq = 826
- Last_Synthesis = 826
- First_Directive = 827
- Define = 827
- Endif = 828
- Ifdef = 829
- Ifndef = 830
- Include = 831
- Timescale = 832
- Undef = 833
- Protect = 834
- Begin_Protected = 835
- End_Protected = 836
- Key_Block = 837
- Data_Block = 838
- Line = 839
- Celldefine = 840
- Endcelldefine = 841
- Default_Nettype = 842
- Resetall = 843
- Last_Directive = 843
- First_Systask = 844
- Bits = 844
- D_Root = 845
- D_Unit = 846
- Last_Systask = 846
- First_SV_Method = 847
- Size = 847
- Insert = 848
- Delete = 849
- Pop_Front = 850
- Pop_Back = 851
- Push_Front = 852
- Push_Back = 853
- Name = 854
- Len = 855
- Substr = 856
- Exists = 857
- Atoi = 858
- Itoa = 859
- Find = 860
- Find_Index = 861
- Find_First = 862
- Find_First_Index = 863
- Find_Last = 864
- Find_Last_Index = 865
- Num = 866
- Randomize = 867
- Pre_Randomize = 868
- Post_Randomize = 869
- Srandom = 870
- Get_Randstate = 871
- Set_Randstate = 872
- Seed = 873
- State = 874
- Last_SV_Method = 874
- First_BSV = 875
- uAction = 875
- uActionValue = 876
- BVI = 877
- uC = 878
- uCF = 879
- uE = 880
- uSB = 881
- uSBR = 882
- Action = 883
- Endaction = 884
- Actionvalue = 885
- Endactionvalue = 886
- Ancestor = 887
- Clocked_By = 888
- Default_Clock = 889
- Default_Reset = 890
- Dependencies = 891
- Deriving = 892
- Determines = 893
- Enable = 894
- Ifc_Inout = 895
- Input_Clock = 896
- Input_Reset = 897
- Instance = 898
- Endinstance = 899
- Let = 900
- Match = 901
- Method = 902
- Endmethod = 903
- Numeric = 904
- Output_Clock = 905
- Output_Reset = 906
- Par = 907
- Endpar = 908
- Path = 909
- Provisos = 910
- Ready = 911
- Reset_By = 912
- Rule = 913
- Endrule = 914
- Rules = 915
- Endrules = 916
- Same_Family = 917
- Schedule = 918
- Seq = 919
- Endseq = 920
- Typeclass = 921
- Endtypeclass = 922
- Valueof = 923
- uValueof = 924
- Last_BSV = 924
- First_Comment = 925
- Psl = 925
- Pragma = 926
- Synthesis = 927
- Synopsys = 928
- Translate_Off = 929
- Translate_On = 930
- Last_Comment = 930
- First_PSL = 931
- A = 931
- Af = 932
- Ag = 933
- Ax = 934
- Abort = 935
- Assume_Guarantee = 936
- Before = 937
- Clock = 938
- E = 939
- Ef = 940
- Eg = 941
- Ex = 942
- Endpoint = 943
- Eventually = 944
- Fairness = 945
- Fell = 946
- Forall = 947
- G = 948
- Inf = 949
- Inherit = 950
- Never = 951
- Next_A = 952
- Next_E = 953
- Next_Event = 954
- Next_Event_A = 955
- Next_Event_E = 956
- Prev = 957
- Rose = 958
- Strong = 959
- W = 960
- Whilenot = 961
- Within = 962
- X = 963
- Last_PSL = 963
- First_Edif = 964
- Celltype = 974
- View = 975
- Viewtype = 976
- Direction = 977
- Contents = 978
- Net = 979
- Viewref = 980
- Cellref = 981
- Libraryref = 982
- Portinstance = 983
- Joined = 984
- Portref = 985
- Instanceref = 986
- Design = 987
- Designator = 988
- Owner = 989
- Member = 990
- Number = 991
- Rename = 992
- Userdata = 993
- Last_Edif = 993
+ VITAL_Timing = 782
+ Numeric_Std = 783
+ Numeric_Bit = 784
+ Std_Logic_Arith = 785
+ Std_Logic_Signed = 786
+ Std_Logic_Unsigned = 787
+ Std_Logic_Textio = 788
+ Std_Logic_Misc = 789
+ Math_Real = 790
+ Last_Ieee_Pkg = 790
+ First_Ieee_Name = 791
+ Std_Ulogic = 791
+ Std_Ulogic_Vector = 792
+ Std_Logic = 793
+ Std_Logic_Vector = 794
+ Rising_Edge = 795
+ Falling_Edge = 796
+ VITAL_Level0 = 797
+ VITAL_Level1 = 798
+ Unresolved_Unsigned = 799
+ Unresolved_Signed = 800
+ To_Integer = 801
+ To_Unsigned = 802
+ To_Signed = 803
+ Resize = 804
+ Std_Match = 805
+ Shift_Left = 806
+ Shift_Right = 807
+ Rotate_Left = 808
+ Rotate_Right = 809
+ To_Bit = 810
+ To_Bitvector = 811
+ To_Stdulogic = 812
+ To_Stdlogicvector = 813
+ To_Stdulogicvector = 814
+ Is_X = 815
+ Conv_Signed = 816
+ Conv_Unsigned = 817
+ Conv_Integer = 818
+ Ceil = 819
+ Round = 820
+ Log2 = 821
+ Sin = 822
+ Cos = 823
+ Last_Ieee_Name = 823
+ First_Synthesis = 824
+ Allconst = 824
+ Allseq = 825
+ Anyconst = 826
+ Anyseq = 827
+ Last_Synthesis = 827
+ First_Directive = 828
+ Define = 828
+ Endif = 829
+ Ifdef = 830
+ Ifndef = 831
+ Include = 832
+ Timescale = 833
+ Undef = 834
+ Protect = 835
+ Begin_Protected = 836
+ End_Protected = 837
+ Key_Block = 838
+ Data_Block = 839
+ Line = 840
+ Celldefine = 841
+ Endcelldefine = 842
+ Default_Nettype = 843
+ Resetall = 844
+ Last_Directive = 844
+ First_Systask = 845
+ Bits = 845
+ D_Root = 846
+ D_Unit = 847
+ Last_Systask = 847
+ First_SV_Method = 848
+ Size = 848
+ Insert = 849
+ Delete = 850
+ Pop_Front = 851
+ Pop_Back = 852
+ Push_Front = 853
+ Push_Back = 854
+ Name = 855
+ Len = 856
+ Substr = 857
+ Exists = 858
+ Atoi = 859
+ Itoa = 860
+ Find = 861
+ Find_Index = 862
+ Find_First = 863
+ Find_First_Index = 864
+ Find_Last = 865
+ Find_Last_Index = 866
+ Num = 867
+ Randomize = 868
+ Pre_Randomize = 869
+ Post_Randomize = 870
+ Srandom = 871
+ Get_Randstate = 872
+ Set_Randstate = 873
+ Seed = 874
+ State = 875
+ Last_SV_Method = 875
+ First_BSV = 876
+ uAction = 876
+ uActionValue = 877
+ BVI = 878
+ uC = 879
+ uCF = 880
+ uE = 881
+ uSB = 882
+ uSBR = 883
+ Action = 884
+ Endaction = 885
+ Actionvalue = 886
+ Endactionvalue = 887
+ Ancestor = 888
+ Clocked_By = 889
+ Default_Clock = 890
+ Default_Reset = 891
+ Dependencies = 892
+ Deriving = 893
+ Determines = 894
+ Enable = 895
+ Ifc_Inout = 896
+ Input_Clock = 897
+ Input_Reset = 898
+ Instance = 899
+ Endinstance = 900
+ Let = 901
+ Match = 902
+ Method = 903
+ Endmethod = 904
+ Numeric = 905
+ Output_Clock = 906
+ Output_Reset = 907
+ Par = 908
+ Endpar = 909
+ Path = 910
+ Provisos = 911
+ Ready = 912
+ Reset_By = 913
+ Rule = 914
+ Endrule = 915
+ Rules = 916
+ Endrules = 917
+ Same_Family = 918
+ Schedule = 919
+ Seq = 920
+ Endseq = 921
+ Typeclass = 922
+ Endtypeclass = 923
+ Valueof = 924
+ uValueof = 925
+ Last_BSV = 925
+ First_Comment = 926
+ Psl = 926
+ Pragma = 927
+ Synthesis = 928
+ Synopsys = 929
+ Translate_Off = 930
+ Translate_On = 931
+ Last_Comment = 931
+ First_PSL = 932
+ A = 932
+ Af = 933
+ Ag = 934
+ Ax = 935
+ Abort = 936
+ Assume_Guarantee = 937
+ Before = 938
+ Clock = 939
+ E = 940
+ Ef = 941
+ Eg = 942
+ Ex = 943
+ Endpoint = 944
+ Eventually = 945
+ Fairness = 946
+ Fell = 947
+ Forall = 948
+ G = 949
+ Inf = 950
+ Inherit = 951
+ Never = 952
+ Next_A = 953
+ Next_E = 954
+ Next_Event = 955
+ Next_Event_A = 956
+ Next_Event_E = 957
+ Prev = 958
+ Rose = 959
+ Strong = 960
+ W = 961
+ Whilenot = 962
+ Within = 963
+ X = 964
+ Last_PSL = 964
+ First_Edif = 965
+ Celltype = 975
+ View = 976
+ Viewtype = 977
+ Direction = 978
+ Contents = 979
+ Net = 980
+ Viewref = 981
+ Cellref = 982
+ Libraryref = 983
+ Portinstance = 984
+ Joined = 985
+ Portref = 986
+ Instanceref = 987
+ Design = 988
+ Designator = 989
+ Owner = 990
+ Member = 991
+ Number = 992
+ Rename = 993
+ Userdata = 994
+ Last_Edif = 994
diff --git a/src/std_names.adb b/src/std_names.adb
index aaad7ab51..1a7de9a6a 100644
--- a/src/std_names.adb
+++ b/src/std_names.adb
@@ -617,23 +617,26 @@ package body Std_Names is
Def ("ieee", Name_Ieee);
Def ("std_logic_1164", Name_Std_Logic_1164);
+ Def ("vital_timing", Name_VITAL_Timing);
+ Def ("numeric_std", Name_Numeric_Std);
+ Def ("numeric_bit", Name_Numeric_Bit);
+ Def ("std_logic_arith", Name_Std_Logic_Arith);
+ Def ("std_logic_signed", Name_Std_Logic_Signed);
+ Def ("std_logic_unsigned", Name_Std_Logic_Unsigned);
+ Def ("std_logic_textio", Name_Std_Logic_Textio);
+ Def ("std_logic_misc", Name_Std_Logic_Misc);
+ Def ("math_real", Name_Math_Real);
+
Def ("std_ulogic", Name_Std_Ulogic);
Def ("std_ulogic_vector", Name_Std_Ulogic_Vector);
Def ("std_logic", Name_Std_Logic);
Def ("std_logic_vector", Name_Std_Logic_Vector);
Def ("rising_edge", Name_Rising_Edge);
Def ("falling_edge", Name_Falling_Edge);
- Def ("vital_timing", Name_VITAL_Timing);
Def ("vital_level0", Name_VITAL_Level0);
Def ("vital_level1", Name_VITAL_Level1);
- Def ("numeric_std", Name_Numeric_Std);
- Def ("numeric_bit", Name_Numeric_Bit);
Def ("unresolved_unsigned", Name_Unresolved_Unsigned);
Def ("unresolved_signed", Name_Unresolved_Signed);
- Def ("std_logic_arith", Name_Std_Logic_Arith);
- Def ("std_logic_signed", Name_Std_Logic_Signed);
- Def ("std_logic_unsigned", Name_Std_Logic_Unsigned);
- Def ("std_logic_textio", Name_Std_Logic_Textio);
Def ("to_integer", Name_To_Integer);
Def ("to_unsigned", Name_To_Unsigned);
Def ("to_signed", Name_To_Signed);
@@ -652,7 +655,6 @@ package body Std_Names is
Def ("conv_signed", Name_Conv_Signed);
Def ("conv_unsigned", Name_Conv_Unsigned);
Def ("conv_integer", Name_Conv_Integer);
- Def ("math_real", Name_Math_Real);
Def ("ceil", Name_Ceil);
Def ("round", Name_Round);
Def ("log2", Name_Log2);
diff --git a/src/std_names.ads b/src/std_names.ads
index eb24904a6..d6c7621c6 100644
--- a/src/std_names.ads
+++ b/src/std_names.ads
@@ -695,53 +695,57 @@ package Std_Names is
Name_None : constant Name_Id := Name_First_Misc + 041;
Name_Last_Misc : constant Name_Id := Name_None;
- Name_First_Ieee : constant Name_Id := Name_Last_Misc + 1;
- Name_Ieee : constant Name_Id := Name_First_Ieee + 000;
- Name_Std_Logic_1164 : constant Name_Id := Name_First_Ieee + 001;
- Name_Std_Ulogic : constant Name_Id := Name_First_Ieee + 002;
- Name_Std_Ulogic_Vector : constant Name_Id := Name_First_Ieee + 003;
- Name_Std_Logic : constant Name_Id := Name_First_Ieee + 004;
- Name_Std_Logic_Vector : constant Name_Id := Name_First_Ieee + 005;
- Name_Rising_Edge : constant Name_Id := Name_First_Ieee + 006;
- Name_Falling_Edge : constant Name_Id := Name_First_Ieee + 007;
- Name_VITAL_Timing : constant Name_Id := Name_First_Ieee + 008;
- Name_VITAL_Level0 : constant Name_Id := Name_First_Ieee + 009;
- Name_VITAL_Level1 : constant Name_Id := Name_First_Ieee + 010;
- Name_Numeric_Std : constant Name_Id := Name_First_Ieee + 011;
- Name_Numeric_Bit : constant Name_Id := Name_First_Ieee + 012;
- Name_Unresolved_Unsigned : constant Name_Id := Name_First_Ieee + 013;
- Name_Unresolved_Signed : constant Name_Id := Name_First_Ieee + 014;
- Name_Std_Logic_Arith : constant Name_Id := Name_First_Ieee + 015;
- Name_Std_Logic_Signed : constant Name_Id := Name_First_Ieee + 016;
- Name_Std_Logic_Unsigned : constant Name_Id := Name_First_Ieee + 017;
- Name_Std_Logic_Textio : constant Name_Id := Name_First_Ieee + 018;
- Name_To_Integer : constant Name_Id := Name_First_Ieee + 019;
- Name_To_Unsigned : constant Name_Id := Name_First_Ieee + 020;
- Name_To_Signed : constant Name_Id := Name_First_Ieee + 021;
- Name_Resize : constant Name_Id := Name_First_Ieee + 022;
- Name_Std_Match : constant Name_Id := Name_First_Ieee + 023;
- Name_Shift_Left : constant Name_Id := Name_First_Ieee + 024;
- Name_Shift_Right : constant Name_Id := Name_First_Ieee + 025;
- Name_Rotate_Left : constant Name_Id := Name_First_Ieee + 026;
- Name_Rotate_Right : constant Name_Id := Name_First_Ieee + 027;
- Name_To_Bit : constant Name_Id := Name_First_Ieee + 028;
- Name_To_Bitvector : constant Name_Id := Name_First_Ieee + 029;
- Name_To_Stdulogic : constant Name_Id := Name_First_Ieee + 030;
- Name_To_Stdlogicvector : constant Name_Id := Name_First_Ieee + 031;
- Name_To_Stdulogicvector : constant Name_Id := Name_First_Ieee + 032;
- Name_Is_X : constant Name_Id := Name_First_Ieee + 033;
- Name_Conv_Signed : constant Name_Id := Name_First_Ieee + 034;
- Name_Conv_Unsigned : constant Name_Id := Name_First_Ieee + 035;
- Name_Conv_Integer : constant Name_Id := Name_First_Ieee + 036;
- Name_Math_Real : constant Name_Id := Name_First_Ieee + 037;
- Name_Ceil : constant Name_Id := Name_First_Ieee + 038;
- Name_Round : constant Name_Id := Name_First_Ieee + 039;
- Name_Log2 : constant Name_Id := Name_First_Ieee + 040;
- Name_Sin : constant Name_Id := Name_First_Ieee + 041;
- Name_Cos : constant Name_Id := Name_First_Ieee + 042;
- Name_Last_Ieee : constant Name_Id := Name_Cos;
-
- Name_First_Synthesis : constant Name_Id := Name_Last_Ieee + 1;
+ Name_First_Ieee_Pkg : constant Name_Id := Name_Last_Misc + 1;
+ Name_Ieee : constant Name_Id := Name_First_Ieee_Pkg + 000;
+ Name_Std_Logic_1164 : constant Name_Id := Name_First_Ieee_Pkg + 001;
+ Name_VITAL_Timing : constant Name_Id := Name_First_Ieee_Pkg + 002;
+ Name_Numeric_Std : constant Name_Id := Name_First_Ieee_Pkg + 003;
+ Name_Numeric_Bit : constant Name_Id := Name_First_Ieee_Pkg + 004;
+ Name_Std_Logic_Arith : constant Name_Id := Name_First_Ieee_Pkg + 005;
+ Name_Std_Logic_Signed : constant Name_Id := Name_First_Ieee_Pkg + 006;
+ Name_Std_Logic_Unsigned : constant Name_Id := Name_First_Ieee_Pkg + 007;
+ Name_Std_Logic_Textio : constant Name_Id := Name_First_Ieee_Pkg + 008;
+ Name_Std_Logic_Misc : constant Name_Id := Name_First_Ieee_Pkg + 009;
+ Name_Math_Real : constant Name_Id := Name_First_Ieee_Pkg + 010;
+ Name_Last_Ieee_Pkg : constant Name_Id := Name_Math_Real;
+
+ Name_First_Ieee_Name : constant Name_Id := Name_Last_Ieee_Pkg + 1;
+ Name_Std_Ulogic : constant Name_Id := Name_First_Ieee_Name + 000;
+ Name_Std_Ulogic_Vector : constant Name_Id := Name_First_Ieee_Name + 001;
+ Name_Std_Logic : constant Name_Id := Name_First_Ieee_Name + 002;
+ Name_Std_Logic_Vector : constant Name_Id := Name_First_Ieee_Name + 003;
+ Name_Rising_Edge : constant Name_Id := Name_First_Ieee_Name + 004;
+ Name_Falling_Edge : constant Name_Id := Name_First_Ieee_Name + 005;
+ Name_VITAL_Level0 : constant Name_Id := Name_First_Ieee_Name + 006;
+ Name_VITAL_Level1 : constant Name_Id := Name_First_Ieee_Name + 007;
+ Name_Unresolved_Unsigned : constant Name_Id := Name_First_Ieee_Name + 008;
+ Name_Unresolved_Signed : constant Name_Id := Name_First_Ieee_Name + 009;
+ Name_To_Integer : constant Name_Id := Name_First_Ieee_Name + 010;
+ Name_To_Unsigned : constant Name_Id := Name_First_Ieee_Name + 011;
+ Name_To_Signed : constant Name_Id := Name_First_Ieee_Name + 012;
+ Name_Resize : constant Name_Id := Name_First_Ieee_Name + 013;
+ Name_Std_Match : constant Name_Id := Name_First_Ieee_Name + 014;
+ Name_Shift_Left : constant Name_Id := Name_First_Ieee_Name + 015;
+ Name_Shift_Right : constant Name_Id := Name_First_Ieee_Name + 016;
+ Name_Rotate_Left : constant Name_Id := Name_First_Ieee_Name + 017;
+ Name_Rotate_Right : constant Name_Id := Name_First_Ieee_Name + 018;
+ Name_To_Bit : constant Name_Id := Name_First_Ieee_Name + 019;
+ Name_To_Bitvector : constant Name_Id := Name_First_Ieee_Name + 020;
+ Name_To_Stdulogic : constant Name_Id := Name_First_Ieee_Name + 021;
+ Name_To_Stdlogicvector : constant Name_Id := Name_First_Ieee_Name + 022;
+ Name_To_Stdulogicvector : constant Name_Id := Name_First_Ieee_Name + 023;
+ Name_Is_X : constant Name_Id := Name_First_Ieee_Name + 024;
+ Name_Conv_Signed : constant Name_Id := Name_First_Ieee_Name + 025;
+ Name_Conv_Unsigned : constant Name_Id := Name_First_Ieee_Name + 026;
+ Name_Conv_Integer : constant Name_Id := Name_First_Ieee_Name + 027;
+ Name_Ceil : constant Name_Id := Name_First_Ieee_Name + 028;
+ Name_Round : constant Name_Id := Name_First_Ieee_Name + 029;
+ Name_Log2 : constant Name_Id := Name_First_Ieee_Name + 030;
+ Name_Sin : constant Name_Id := Name_First_Ieee_Name + 031;
+ Name_Cos : constant Name_Id := Name_First_Ieee_Name + 032;
+ Name_Last_Ieee_Name : constant Name_Id := Name_Cos;
+
+ Name_First_Synthesis : constant Name_Id := Name_Last_Ieee_Name + 1;
Name_Allconst : constant Name_Id := Name_First_Synthesis + 000;
Name_Allseq : constant Name_Id := Name_First_Synthesis + 001;
Name_Anyconst : constant Name_Id := Name_First_Synthesis + 002;