diff options
author | Tristan Gingold <tgingold@free.fr> | 2023-03-12 17:28:39 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2023-03-13 07:29:24 +0100 |
commit | 5d90b04e624713e5341439167f7b54a699ce7c6b (patch) | |
tree | d66cd0c1bf8863849ad810ee303c5c419bbd4eca | |
parent | c2a8dee97b6794753da78e8b3365f7d5650238b0 (diff) | |
download | ghdl-5d90b04e624713e5341439167f7b54a699ce7c6b.tar.gz ghdl-5d90b04e624713e5341439167f7b54a699ce7c6b.tar.bz2 ghdl-5d90b04e624713e5341439167f7b54a699ce7c6b.zip |
ghdllocal.adb(Build_Dependence): rebuild file dependencies.
vhdl: remove Get/Set_File_Dependence_List.
Fix #2388
-rw-r--r-- | pyGHDL/libghdl/vhdl/nodes.py | 13 | ||||
-rw-r--r-- | pyGHDL/libghdl/vhdl/nodes_meta.py | 767 | ||||
-rw-r--r-- | src/ghdldrv/ghdldrv.adb | 12 | ||||
-rw-r--r-- | src/ghdldrv/ghdllocal.adb | 94 | ||||
-rw-r--r-- | src/ghdldrv/ghdllocal.ads | 4 | ||||
-rw-r--r-- | src/vhdl/vhdl-configuration.adb | 41 | ||||
-rw-r--r-- | src/vhdl/vhdl-nodes.adb | 18 | ||||
-rw-r--r-- | src/vhdl/vhdl-nodes.ads | 7 | ||||
-rw-r--r-- | src/vhdl/vhdl-nodes_meta.adb | 659 | ||||
-rw-r--r-- | src/vhdl/vhdl-nodes_meta.ads | 2 |
10 files changed, 784 insertions, 833 deletions
diff --git a/pyGHDL/libghdl/vhdl/nodes.py b/pyGHDL/libghdl/vhdl/nodes.py index 9af4cacea..dad9f26a0 100644 --- a/pyGHDL/libghdl/vhdl/nodes.py +++ b/pyGHDL/libghdl/vhdl/nodes.py @@ -2081,19 +2081,6 @@ def Set_Library(obj: Iir, value: Iir) -> None: @export -@BindToLibGHDL("vhdl__nodes__get_file_dependence_list") -def Get_File_Dependence_List(obj: Iir) -> Iir: - """""" - return 0 - - -@export -@BindToLibGHDL("vhdl__nodes__set_file_dependence_list") -def Set_File_Dependence_List(obj: Iir, value: Iir) -> None: - """""" - - -@export @BindToLibGHDL("vhdl__nodes__get_design_file_filename") def Get_Design_File_Filename(obj: Iir) -> NameId: """""" diff --git a/pyGHDL/libghdl/vhdl/nodes_meta.py b/pyGHDL/libghdl/vhdl/nodes_meta.py index f1d70aa22..fcacf57c5 100644 --- a/pyGHDL/libghdl/vhdl/nodes_meta.py +++ b/pyGHDL/libghdl/vhdl/nodes_meta.py @@ -124,387 +124,386 @@ class fields(IntEnum): Analysis_Time_Stamp = 4 Design_File_Source = 5 Library = 6 - File_Dependence_List = 7 - Design_File_Filename = 8 - Design_File_Directory = 9 - Design_File = 10 - Design_File_Chain = 11 - Library_Directory = 12 - Date = 13 - Context_Items = 14 - Dependence_List = 15 - Analysis_Checks_List = 16 - Date_State = 17 - Guarded_Target_State = 18 - Library_Unit = 19 - Hash_Chain = 20 - Design_Unit_Source_Pos = 21 - Design_Unit_Source_Line = 22 - Design_Unit_Source_Col = 23 - Value = 24 - Enum_Pos = 25 - Physical_Literal = 26 - Fp_Value = 27 - Simple_Aggregate_List = 28 - String8_Id = 29 - String_Length = 30 - Bit_String_Base = 31 - Has_Signed = 32 - Has_Sign = 33 - Has_Length = 34 - Literal_Length = 35 - Literal_Origin = 36 - Range_Origin = 37 - Literal_Subtype = 38 - Allocator_Subtype = 39 - Entity_Class = 40 - Entity_Name_List = 41 - Attribute_Designator = 42 - Attribute_Specification_Chain = 43 - Attribute_Specification = 44 - Static_Attribute_Flag = 45 - Signal_List = 46 - Quantity_List = 47 - Designated_Entity = 48 - Formal = 49 - Actual = 50 - Open_Actual = 51 - Actual_Conversion = 52 - Formal_Conversion = 53 - Whole_Association_Flag = 54 - Collapse_Signal_Flag = 55 - Artificial_Flag = 56 - Open_Flag = 57 - After_Drivers_Flag = 58 - We_Value = 59 - Time = 60 - Associated_Expr = 61 - Associated_Block = 62 - Associated_Chain = 63 - Choice_Name = 64 - Choice_Expression = 65 - Choice_Range = 66 - Same_Alternative_Flag = 67 - Element_Type_Flag = 68 - Architecture = 69 - Block_Specification = 70 - Prev_Block_Configuration = 71 - Configuration_Item_Chain = 72 - Attribute_Value_Chain = 73 - Spec_Chain = 74 - Value_Chain = 75 - Attribute_Value_Spec_Chain = 76 - Entity_Name = 77 - Package = 78 - Package_Body = 79 - Instance_Package_Body = 80 - Need_Body = 81 - Macro_Expanded_Flag = 82 - Need_Instance_Bodies = 83 - Hierarchical_Name = 84 - Vunit_Item_Chain = 85 - Bound_Vunit_Chain = 86 - Verification_Block_Configuration = 87 - Block_Configuration = 88 - Concurrent_Statement_Chain = 89 - Chain = 90 - Port_Chain = 91 - Generic_Chain = 92 - Type = 93 - Subtype_Indication = 94 - Discrete_Range = 95 - Type_Definition = 96 - Subtype_Definition = 97 - Incomplete_Type_Declaration = 98 - Interface_Type_Subprograms = 99 - Interface_Type_Definition = 100 - Nature_Definition = 101 - Nature = 102 - Subnature_Indication = 103 - Reference_Terminal_Flag = 104 - Mode = 105 - Guarded_Signal_Flag = 106 - Signal_Kind = 107 - Base_Name = 108 - Interface_Declaration_Chain = 109 - Default_Subprogram = 110 - Associated_Subprogram = 111 - Subprogram_Specification = 112 - Sequential_Statement_Chain = 113 - Simultaneous_Statement_Chain = 114 - Subprogram_Body = 115 - Overload_Number = 116 - Subprogram_Depth = 117 - Subprogram_Hash = 118 - Impure_Depth = 119 - Return_Type = 120 - Implicit_Definition = 121 - Uninstantiated_Subprogram_Name = 122 - Default_Value = 123 - Deferred_Declaration = 124 - Deferred_Declaration_Flag = 125 - Shared_Flag = 126 - Design_Unit = 127 - Block_Statement = 128 - Signal_Driver = 129 - Declaration_Chain = 130 - File_Logical_Name = 131 - File_Open_Kind = 132 - Element_Position = 133 - Use_Clause_Chain = 134 - Context_Reference_Chain = 135 - Inherit_Spec_Chain = 136 - Selected_Name = 137 - Type_Declarator = 138 - Complete_Type_Definition = 139 - Incomplete_Type_Ref_Chain = 140 - Associated_Type = 141 - Enumeration_Literal_List = 142 - Entity_Class_Entry_Chain = 143 - Group_Constituent_List = 144 - Unit_Chain = 145 - Primary_Unit = 146 - Identifier = 147 - Label = 148 - Return_Identifier = 149 - Visible_Flag = 150 - Range_Constraint = 151 - Direction = 152 - Left_Limit = 153 - Right_Limit = 154 - Left_Limit_Expr = 155 - Right_Limit_Expr = 156 - Parent_Type = 157 - Simple_Nature = 158 - Base_Nature = 159 - Resolution_Indication = 160 - Record_Element_Resolution_Chain = 161 - Tolerance = 162 - Plus_Terminal_Name = 163 - Minus_Terminal_Name = 164 - Plus_Terminal = 165 - Minus_Terminal = 166 - Magnitude_Expression = 167 - Phase_Expression = 168 - Power_Expression = 169 - Simultaneous_Left = 170 - Simultaneous_Right = 171 - Text_File_Flag = 172 - Only_Characters_Flag = 173 - Is_Character_Type = 174 - Nature_Staticness = 175 - Type_Staticness = 176 - Constraint_State = 177 - Index_Subtype_List = 178 - Index_Subtype_Definition_List = 179 - Element_Subtype_Indication = 180 - Element_Subtype = 181 - Element_Subnature_Indication = 182 - Element_Subnature = 183 - Index_Constraint_List = 184 - Array_Element_Constraint = 185 - Has_Array_Constraint_Flag = 186 - Has_Element_Constraint_Flag = 187 - Elements_Declaration_List = 188 - Owned_Elements_Chain = 189 - Designated_Type = 190 - Designated_Subtype_Indication = 191 - Index_List = 192 - Reference = 193 - Nature_Declarator = 194 - Across_Type_Mark = 195 - Through_Type_Mark = 196 - Across_Type_Definition = 197 - Through_Type_Definition = 198 - Across_Type = 199 - Through_Type = 200 - Target = 201 - Waveform_Chain = 202 - Guard = 203 - Delay_Mechanism = 204 - Reject_Time_Expression = 205 - Force_Mode = 206 - Has_Force_Mode = 207 - Sensitivity_List = 208 - Process_Origin = 209 - Package_Origin = 210 - Condition_Clause = 211 - Break_Element = 212 - Selector_Quantity = 213 - Break_Quantity = 214 - Timeout_Clause = 215 - Postponed_Flag = 216 - Callees_List = 217 - Passive_Flag = 218 - Resolution_Function_Flag = 219 - Wait_State = 220 - All_Sensitized_State = 221 - Seen_Flag = 222 - Pure_Flag = 223 - Foreign_Flag = 224 - Resolved_Flag = 225 - Signal_Type_Flag = 226 - Has_Signal_Flag = 227 - Purity_State = 228 - Elab_Flag = 229 - Vendor_Library_Flag = 230 - Configuration_Mark_Flag = 231 - Configuration_Done_Flag = 232 - Index_Constraint_Flag = 233 - Hide_Implicit_Flag = 234 - Assertion_Condition = 235 - Report_Expression = 236 - Severity_Expression = 237 - Instantiated_Unit = 238 - Instantiated_Header = 239 - Generic_Map_Aspect_Chain = 240 - Port_Map_Aspect_Chain = 241 - Configuration_Name = 242 - Component_Configuration = 243 - Configuration_Specification = 244 - Default_Binding_Indication = 245 - Default_Configuration_Declaration = 246 - Expression = 247 - Conditional_Expression_Chain = 248 - Allocator_Designated_Type = 249 - Selected_Waveform_Chain = 250 - Conditional_Waveform_Chain = 251 - Guard_Expression = 252 - Guard_Decl = 253 - Guard_Sensitivity_List = 254 - Attribute_Implicit_Chain = 255 - Block_Block_Configuration = 256 - Package_Header = 257 - Block_Header = 258 - Uninstantiated_Package_Name = 259 - Uninstantiated_Package_Decl = 260 - Associated_Package = 261 - Instance_Source_File = 262 - Generate_Block_Configuration = 263 - Generate_Statement_Body = 264 - Alternative_Label = 265 - Generate_Else_Clause = 266 - Condition = 267 - Else_Clause = 268 - Parameter_Specification = 269 - Parent = 270 - Loop_Label = 271 - Exit_Flag = 272 - Next_Flag = 273 - Component_Name = 274 - Instantiation_List = 275 - Entity_Aspect = 276 - Default_Entity_Aspect = 277 - Binding_Indication = 278 - Named_Entity = 279 - Referenced_Name = 280 - Expr_Staticness = 281 - Scalar_Size = 282 - Error_Origin = 283 - Operand = 284 - Left = 285 - Right = 286 - Unit_Name = 287 - Name = 288 - Group_Template_Name = 289 - Name_Staticness = 290 - Prefix = 291 - Signature_Prefix = 292 - External_Pathname = 293 - Pathname_Suffix = 294 - Pathname_Expression = 295 - In_Formal_Flag = 296 - Inertial_Flag = 297 - Slice_Subtype = 298 - Suffix = 299 - Index_Subtype = 300 - Parameter = 301 - Parameter_2 = 302 - Parameter_3 = 303 - Parameter_4 = 304 - Attr_Chain = 305 - Attribute_Implicit_Declaration = 306 - Actual_Type = 307 - Actual_Type_Definition = 308 - Association_Chain = 309 - Individual_Association_Chain = 310 - Subprogram_Association_Chain = 311 - Aggregate_Info = 312 - Sub_Aggregate_Info = 313 - Aggr_Dynamic_Flag = 314 - Aggr_Min_Length = 315 - Aggr_Low_Limit = 316 - Aggr_High_Limit = 317 - Aggr_Others_Flag = 318 - Aggr_Named_Flag = 319 - Aggregate_Expand_Flag = 320 - Determined_Aggregate_Flag = 321 - Association_Choices_Chain = 322 - Case_Statement_Alternative_Chain = 323 - Matching_Flag = 324 - Choice_Staticness = 325 - Procedure_Call = 326 - Implementation = 327 - Parameter_Association_Chain = 328 - Method_Object = 329 - Subtype_Type_Mark = 330 - Subnature_Nature_Mark = 331 - Type_Conversion_Subtype = 332 - Type_Mark = 333 - File_Type_Mark = 334 - Return_Type_Mark = 335 - Has_Disconnect_Flag = 336 - Has_Active_Flag = 337 - Is_Within_Flag = 338 - Type_Marks_List = 339 - Implicit_Alias_Flag = 340 - Alias_Signature = 341 - Attribute_Signature = 342 - Overload_List = 343 - Simple_Name_Identifier = 344 - Simple_Name_Subtype = 345 - Protected_Type_Body = 346 - Protected_Type_Declaration = 347 - Use_Flag = 348 - Elaborated_Flag = 349 - End_Has_Reserved_Id = 350 - End_Has_Identifier = 351 - End_Has_Postponed = 352 - Has_Label = 353 - Has_Begin = 354 - Has_End = 355 - Has_Is = 356 - Has_Pure = 357 - Has_Body = 358 - Has_Parameter = 359 - Has_Component = 360 - Has_Identifier_List = 361 - Has_Mode = 362 - Has_Class = 363 - Has_Delay_Mechanism = 364 - Suspend_Flag = 365 - Stop_Flag = 366 - Is_Ref = 367 - Is_Forward_Ref = 368 - Psl_Property = 369 - Psl_Sequence = 370 - Psl_Declaration = 371 - Psl_Expression = 372 - Psl_Boolean = 373 - PSL_Clock = 374 - PSL_NFA = 375 - PSL_Nbr_States = 376 - PSL_Clock_Sensitivity = 377 - PSL_EOS_Flag = 378 - PSL_Abort_Flag = 379 - Count_Expression = 380 - Clock_Expression = 381 - Default_Clock = 382 - Foreign_Node = 383 - Suspend_State_Index = 384 - Suspend_State_Chain = 385 - Suspend_State_Last = 386 - Suspend_State_Decl = 387 + Design_File_Filename = 7 + Design_File_Directory = 8 + Design_File = 9 + Design_File_Chain = 10 + Library_Directory = 11 + Date = 12 + Context_Items = 13 + Dependence_List = 14 + Analysis_Checks_List = 15 + Date_State = 16 + Guarded_Target_State = 17 + Library_Unit = 18 + Hash_Chain = 19 + Design_Unit_Source_Pos = 20 + Design_Unit_Source_Line = 21 + Design_Unit_Source_Col = 22 + Value = 23 + Enum_Pos = 24 + Physical_Literal = 25 + Fp_Value = 26 + Simple_Aggregate_List = 27 + String8_Id = 28 + String_Length = 29 + Bit_String_Base = 30 + Has_Signed = 31 + Has_Sign = 32 + Has_Length = 33 + Literal_Length = 34 + Literal_Origin = 35 + Range_Origin = 36 + Literal_Subtype = 37 + Allocator_Subtype = 38 + Entity_Class = 39 + Entity_Name_List = 40 + Attribute_Designator = 41 + Attribute_Specification_Chain = 42 + Attribute_Specification = 43 + Static_Attribute_Flag = 44 + Signal_List = 45 + Quantity_List = 46 + Designated_Entity = 47 + Formal = 48 + Actual = 49 + Open_Actual = 50 + Actual_Conversion = 51 + Formal_Conversion = 52 + Whole_Association_Flag = 53 + Collapse_Signal_Flag = 54 + Artificial_Flag = 55 + Open_Flag = 56 + After_Drivers_Flag = 57 + We_Value = 58 + Time = 59 + Associated_Expr = 60 + Associated_Block = 61 + Associated_Chain = 62 + Choice_Name = 63 + Choice_Expression = 64 + Choice_Range = 65 + Same_Alternative_Flag = 66 + Element_Type_Flag = 67 + Architecture = 68 + Block_Specification = 69 + Prev_Block_Configuration = 70 + Configuration_Item_Chain = 71 + Attribute_Value_Chain = 72 + Spec_Chain = 73 + Value_Chain = 74 + Attribute_Value_Spec_Chain = 75 + Entity_Name = 76 + Package = 77 + Package_Body = 78 + Instance_Package_Body = 79 + Need_Body = 80 + Macro_Expanded_Flag = 81 + Need_Instance_Bodies = 82 + Hierarchical_Name = 83 + Vunit_Item_Chain = 84 + Bound_Vunit_Chain = 85 + Verification_Block_Configuration = 86 + Block_Configuration = 87 + Concurrent_Statement_Chain = 88 + Chain = 89 + Port_Chain = 90 + Generic_Chain = 91 + Type = 92 + Subtype_Indication = 93 + Discrete_Range = 94 + Type_Definition = 95 + Subtype_Definition = 96 + Incomplete_Type_Declaration = 97 + Interface_Type_Subprograms = 98 + Interface_Type_Definition = 99 + Nature_Definition = 100 + Nature = 101 + Subnature_Indication = 102 + Reference_Terminal_Flag = 103 + Mode = 104 + Guarded_Signal_Flag = 105 + Signal_Kind = 106 + Base_Name = 107 + Interface_Declaration_Chain = 108 + Default_Subprogram = 109 + Associated_Subprogram = 110 + Subprogram_Specification = 111 + Sequential_Statement_Chain = 112 + Simultaneous_Statement_Chain = 113 + Subprogram_Body = 114 + Overload_Number = 115 + Subprogram_Depth = 116 + Subprogram_Hash = 117 + Impure_Depth = 118 + Return_Type = 119 + Implicit_Definition = 120 + Uninstantiated_Subprogram_Name = 121 + Default_Value = 122 + Deferred_Declaration = 123 + Deferred_Declaration_Flag = 124 + Shared_Flag = 125 + Design_Unit = 126 + Block_Statement = 127 + Signal_Driver = 128 + Declaration_Chain = 129 + File_Logical_Name = 130 + File_Open_Kind = 131 + Element_Position = 132 + Use_Clause_Chain = 133 + Context_Reference_Chain = 134 + Inherit_Spec_Chain = 135 + Selected_Name = 136 + Type_Declarator = 137 + Complete_Type_Definition = 138 + Incomplete_Type_Ref_Chain = 139 + Associated_Type = 140 + Enumeration_Literal_List = 141 + Entity_Class_Entry_Chain = 142 + Group_Constituent_List = 143 + Unit_Chain = 144 + Primary_Unit = 145 + Identifier = 146 + Label = 147 + Return_Identifier = 148 + Visible_Flag = 149 + Range_Constraint = 150 + Direction = 151 + Left_Limit = 152 + Right_Limit = 153 + Left_Limit_Expr = 154 + Right_Limit_Expr = 155 + Parent_Type = 156 + Simple_Nature = 157 + Base_Nature = 158 + Resolution_Indication = 159 + Record_Element_Resolution_Chain = 160 + Tolerance = 161 + Plus_Terminal_Name = 162 + Minus_Terminal_Name = 163 + Plus_Terminal = 164 + Minus_Terminal = 165 + Magnitude_Expression = 166 + Phase_Expression = 167 + Power_Expression = 168 + Simultaneous_Left = 169 + Simultaneous_Right = 170 + Text_File_Flag = 171 + Only_Characters_Flag = 172 + Is_Character_Type = 173 + Nature_Staticness = 174 + Type_Staticness = 175 + Constraint_State = 176 + Index_Subtype_List = 177 + Index_Subtype_Definition_List = 178 + Element_Subtype_Indication = 179 + Element_Subtype = 180 + Element_Subnature_Indication = 181 + Element_Subnature = 182 + Index_Constraint_List = 183 + Array_Element_Constraint = 184 + Has_Array_Constraint_Flag = 185 + Has_Element_Constraint_Flag = 186 + Elements_Declaration_List = 187 + Owned_Elements_Chain = 188 + Designated_Type = 189 + Designated_Subtype_Indication = 190 + Index_List = 191 + Reference = 192 + Nature_Declarator = 193 + Across_Type_Mark = 194 + Through_Type_Mark = 195 + Across_Type_Definition = 196 + Through_Type_Definition = 197 + Across_Type = 198 + Through_Type = 199 + Target = 200 + Waveform_Chain = 201 + Guard = 202 + Delay_Mechanism = 203 + Reject_Time_Expression = 204 + Force_Mode = 205 + Has_Force_Mode = 206 + Sensitivity_List = 207 + Process_Origin = 208 + Package_Origin = 209 + Condition_Clause = 210 + Break_Element = 211 + Selector_Quantity = 212 + Break_Quantity = 213 + Timeout_Clause = 214 + Postponed_Flag = 215 + Callees_List = 216 + Passive_Flag = 217 + Resolution_Function_Flag = 218 + Wait_State = 219 + All_Sensitized_State = 220 + Seen_Flag = 221 + Pure_Flag = 222 + Foreign_Flag = 223 + Resolved_Flag = 224 + Signal_Type_Flag = 225 + Has_Signal_Flag = 226 + Purity_State = 227 + Elab_Flag = 228 + Vendor_Library_Flag = 229 + Configuration_Mark_Flag = 230 + Configuration_Done_Flag = 231 + Index_Constraint_Flag = 232 + Hide_Implicit_Flag = 233 + Assertion_Condition = 234 + Report_Expression = 235 + Severity_Expression = 236 + Instantiated_Unit = 237 + Instantiated_Header = 238 + Generic_Map_Aspect_Chain = 239 + Port_Map_Aspect_Chain = 240 + Configuration_Name = 241 + Component_Configuration = 242 + Configuration_Specification = 243 + Default_Binding_Indication = 244 + Default_Configuration_Declaration = 245 + Expression = 246 + Conditional_Expression_Chain = 247 + Allocator_Designated_Type = 248 + Selected_Waveform_Chain = 249 + Conditional_Waveform_Chain = 250 + Guard_Expression = 251 + Guard_Decl = 252 + Guard_Sensitivity_List = 253 + Attribute_Implicit_Chain = 254 + Block_Block_Configuration = 255 + Package_Header = 256 + Block_Header = 257 + Uninstantiated_Package_Name = 258 + Uninstantiated_Package_Decl = 259 + Associated_Package = 260 + Instance_Source_File = 261 + Generate_Block_Configuration = 262 + Generate_Statement_Body = 263 + Alternative_Label = 264 + Generate_Else_Clause = 265 + Condition = 266 + Else_Clause = 267 + Parameter_Specification = 268 + Parent = 269 + Loop_Label = 270 + Exit_Flag = 271 + Next_Flag = 272 + Component_Name = 273 + Instantiation_List = 274 + Entity_Aspect = 275 + Default_Entity_Aspect = 276 + Binding_Indication = 277 + Named_Entity = 278 + Referenced_Name = 279 + Expr_Staticness = 280 + Scalar_Size = 281 + Error_Origin = 282 + Operand = 283 + Left = 284 + Right = 285 + Unit_Name = 286 + Name = 287 + Group_Template_Name = 288 + Name_Staticness = 289 + Prefix = 290 + Signature_Prefix = 291 + External_Pathname = 292 + Pathname_Suffix = 293 + Pathname_Expression = 294 + In_Formal_Flag = 295 + Inertial_Flag = 296 + Slice_Subtype = 297 + Suffix = 298 + Index_Subtype = 299 + Parameter = 300 + Parameter_2 = 301 + Parameter_3 = 302 + Parameter_4 = 303 + Attr_Chain = 304 + Attribute_Implicit_Declaration = 305 + Actual_Type = 306 + Actual_Type_Definition = 307 + Association_Chain = 308 + Individual_Association_Chain = 309 + Subprogram_Association_Chain = 310 + Aggregate_Info = 311 + Sub_Aggregate_Info = 312 + Aggr_Dynamic_Flag = 313 + Aggr_Min_Length = 314 + Aggr_Low_Limit = 315 + Aggr_High_Limit = 316 + Aggr_Others_Flag = 317 + Aggr_Named_Flag = 318 + Aggregate_Expand_Flag = 319 + Determined_Aggregate_Flag = 320 + Association_Choices_Chain = 321 + Case_Statement_Alternative_Chain = 322 + Matching_Flag = 323 + Choice_Staticness = 324 + Procedure_Call = 325 + Implementation = 326 + Parameter_Association_Chain = 327 + Method_Object = 328 + Subtype_Type_Mark = 329 + Subnature_Nature_Mark = 330 + Type_Conversion_Subtype = 331 + Type_Mark = 332 + File_Type_Mark = 333 + Return_Type_Mark = 334 + Has_Disconnect_Flag = 335 + Has_Active_Flag = 336 + Is_Within_Flag = 337 + Type_Marks_List = 338 + Implicit_Alias_Flag = 339 + Alias_Signature = 340 + Attribute_Signature = 341 + Overload_List = 342 + Simple_Name_Identifier = 343 + Simple_Name_Subtype = 344 + Protected_Type_Body = 345 + Protected_Type_Declaration = 346 + Use_Flag = 347 + Elaborated_Flag = 348 + End_Has_Reserved_Id = 349 + End_Has_Identifier = 350 + End_Has_Postponed = 351 + Has_Label = 352 + Has_Begin = 353 + Has_End = 354 + Has_Is = 355 + Has_Pure = 356 + Has_Body = 357 + Has_Parameter = 358 + Has_Component = 359 + Has_Identifier_List = 360 + Has_Mode = 361 + Has_Class = 362 + Has_Delay_Mechanism = 363 + Suspend_Flag = 364 + Stop_Flag = 365 + Is_Ref = 366 + Is_Forward_Ref = 367 + Psl_Property = 368 + Psl_Sequence = 369 + Psl_Declaration = 370 + Psl_Expression = 371 + Psl_Boolean = 372 + PSL_Clock = 373 + PSL_NFA = 374 + PSL_Nbr_States = 375 + PSL_Clock_Sensitivity = 376 + PSL_EOS_Flag = 377 + PSL_Abort_Flag = 378 + Count_Expression = 379 + Clock_Expression = 380 + Default_Clock = 381 + Foreign_Node = 382 + Suspend_State_Index = 383 + Suspend_State_Chain = 384 + Suspend_State_Last = 385 + Suspend_State_Decl = 386 def Get_Boolean(node, field): @@ -682,12 +681,6 @@ def Has_Library(kind: IirKind) -> bool: @export -@BindToLibGHDL("vhdl__nodes_meta__has_file_dependence_list") -def Has_File_Dependence_List(kind: IirKind) -> bool: - """""" - - -@export @BindToLibGHDL("vhdl__nodes_meta__has_design_file_filename") def Has_Design_File_Filename(kind: IirKind) -> bool: """""" diff --git a/src/ghdldrv/ghdldrv.adb b/src/ghdldrv/ghdldrv.adb index 0313e6057..4a36f95c7 100644 --- a/src/ghdldrv/ghdldrv.adb +++ b/src/ghdldrv/ghdldrv.adb @@ -1659,18 +1659,19 @@ package body Ghdldrv is if Flag_Verbose then Put_Line (":"); declare - Dep_List : constant Iir_List := - Get_File_Dependence_List (File); + Dep_List : Iir_List; Dep_It : List_Iterator; Dep_File : Iir; begin - Dep_It := List_Iterate_Safe (Dep_List); + Dep_List := Build_File_Dependences (File); + Dep_It := List_Iterate (Dep_List); while Is_Valid (Dep_It) loop Put (" "); Dep_File := Get_Element (Dep_It); Put_Line (Image (Get_Design_File_Filename (Dep_File))); Next (Dep_It); end loop; + Destroy_Iir_List (Dep_List); end; else New_Line; @@ -2004,8 +2005,8 @@ package body Ghdldrv is if Is_Makeable_File (File) then Put (Get_Object_Filename (File)); Put (": "); - Dep_List := Get_File_Dependence_List (File); - Dep_It := List_Iterate_Safe (Dep_List); + Dep_List := Build_File_Dependences (File); + Dep_It := List_Iterate (Dep_List); while Is_Valid (Dep_It) loop Dep_File := Get_Element (Dep_It); if Dep_File /= File and then Is_Makeable_File (Dep_File) @@ -2015,6 +2016,7 @@ package body Ghdldrv is end if; Next (Dep_It); end loop; + Destroy_Iir_List (Dep_List); New_Line; end if; Next (Files_It); diff --git a/src/ghdldrv/ghdllocal.adb b/src/ghdldrv/ghdllocal.adb index e7e8f5261..ecc36db39 100644 --- a/src/ghdldrv/ghdllocal.adb +++ b/src/ghdldrv/ghdllocal.adb @@ -1532,31 +1532,73 @@ package body Ghdllocal is end loop; end Check_No_Elab_Flag; + -- Append all the file on which FILE depends. + procedure Append_File_Dependences (File : Iir_Design_File; List : Iir_List) + is + Unit : Iir; + List_It : List_Iterator; + Dep_Unit : Iir; + Dep_Unit_File : Iir; + begin + -- Prepend the dependencies. + Unit := Get_First_Design_Unit (File); + while Unit /= Null_Iir loop + List_It := List_Iterate_Safe (Get_Dependence_List (Unit)); + while Is_Valid (List_It) loop + Dep_Unit := Get_Element (List_It); + -- TODO: exclude anonymous configurations ? + -- A dependency could be an entity aspect. + Dep_Unit := Libraries.Find_Design_Unit (Dep_Unit); + if Dep_Unit /= Null_Iir then + case Get_Kind (Dep_Unit) is + when Iir_Kind_Design_Unit => + Dep_Unit_File := Get_Parent (Dep_Unit); + if not Get_Elab_Flag (Dep_Unit_File) then + -- Add if not already in the list. + Set_Elab_Flag (Dep_Unit_File, True); + Append_File_Dependences (Dep_Unit_File, List); + Append_Element (List, Dep_Unit_File); + end if; + when Iir_Kind_Foreign_Module => + null; + when others => + raise Internal_Error; + end case; + end if; + Next (List_It); + end loop; + Unit := Get_Chain (Unit); + end loop; + end Append_File_Dependences; + + procedure Clear_Elab_Flag (List : Iir_List) + is + It : List_Iterator; + begin + It := List_Iterate (List); + while Is_Valid (It) loop + Set_Elab_Flag (Get_Element (It), False); + Next (It); + end loop; + end Clear_Elab_Flag; + + function Build_File_Dependences (File : Iir) return Iir_List + is + Res : Iir_List; + begin + Res := Create_Iir_List; + Set_Elab_Flag (File, True); + Append_File_Dependences (File, Res); + + Clear_Elab_Flag (Res); + Set_Elab_Flag (File, False); + + return Res; + end Build_File_Dependences; + function Build_Dependence (Lib : Name_Id; Prim : Name_Id; Sec : Name_Id) return Iir_List is - procedure Build_Dependence_List (File : Iir_Design_File; List : Iir_List) - is - El : Iir_Design_File; - Depend_List : Iir_List; - Depend_It : List_Iterator; - begin - if Get_Elab_Flag (File) then - return; - end if; - - Set_Elab_Flag (File, True); - Depend_List := Get_File_Dependence_List (File); - if Depend_List /= Null_Iir_List then - Depend_It := List_Iterate (Depend_List); - while Is_Valid (Depend_It) loop - El := Get_Element (Depend_It); - Build_Dependence_List (El, List); - Next (Depend_It); - end loop; - end if; - Append_Element (List, File); - end Build_Dependence_List; use Vhdl.Configuration; @@ -1652,9 +1694,15 @@ package body Ghdllocal is for I in Design_Units.First .. Design_Units.Last loop Unit := Design_Units.Table (I); File := Get_Design_File (Unit); - Build_Dependence_List (File, Files_List); + if not Get_Elab_Flag (File) then + Set_Elab_Flag (File, True); + Append_File_Dependences (File, Files_List); + Append_Element (Files_List, File); + end if; end loop; + Clear_Elab_Flag (Files_List); + return Files_List; end Build_Dependence; diff --git a/src/ghdldrv/ghdllocal.ads b/src/ghdldrv/ghdllocal.ads index f476ae24c..953002923 100644 --- a/src/ghdldrv/ghdllocal.ads +++ b/src/ghdldrv/ghdllocal.ads @@ -130,9 +130,13 @@ package Ghdllocal is -- Raise errorout.compilation_error in case of error (parse error). procedure Load_All_Libraries_And_Files; + -- Return an ordered list of design_files to build LIB.PRIM.SEC. function Build_Dependence (Lib : Name_Id; Prim : Name_Id; Sec : Name_Id) return Iir_List; + -- Return a list of design_file on which FILE depends. + function Build_File_Dependences (File : Iir) return Iir_List; + -- Return True iff file FILE has been modified (the file time stamp does -- no correspond to what was recorded in the library). function Source_File_Modified (File : Iir_Design_File) return Boolean; diff --git a/src/vhdl/vhdl-configuration.adb b/src/vhdl/vhdl-configuration.adb index 9777cca6a..a05009c7a 100644 --- a/src/vhdl/vhdl-configuration.adb +++ b/src/vhdl/vhdl-configuration.adb @@ -35,7 +35,6 @@ package body Vhdl.Configuration is procedure Add_Design_Block_Configuration (Blk : Iir_Block_Configuration); procedure Add_Design_Aspect (Aspect : Iir; Add_Default : Boolean); - Current_File_Dependence : Iir_List := Null_Iir_List; Current_Configuration : Iir_Configuration_Declaration := Null_Iir; -- UNIT is a design unit of a configuration declaration. @@ -48,18 +47,7 @@ package body Vhdl.Configuration is It : List_Iterator; El : Iir; Lib_Unit : Iir; - File : Iir_Design_File; - Prev_File_Dependence : Iir_List; begin - if Flag_Build_File_Dependence then - -- The current file depends on unit. - File := Get_Design_File (Unit); - if Current_File_Dependence /= Null_Iir_List then - -- (There is no dependency for default configuration). - Add_Element (Current_File_Dependence, File); - end if; - end if; - -- If already in the table, then nothing to do. if Get_Configuration_Mark_Flag (Unit) then -- There might be some direct recursions: @@ -82,26 +70,6 @@ package body Vhdl.Configuration is Lib_Unit := Get_Library_Unit (Unit); - if Flag_Build_File_Dependence then - -- Switch current_file_dependence to the design file of Unit. - Prev_File_Dependence := Current_File_Dependence; - - if Get_Kind (Lib_Unit) = Iir_Kind_Configuration_Declaration - and then Get_Identifier (Lib_Unit) = Null_Identifier - then - -- Do not add dependence for default configuration. - Current_File_Dependence := Null_Iir_List; - else - File := Get_Design_File (Unit); - Current_File_Dependence := Get_File_Dependence_List (File); - -- Create a list if not yet created. - if Current_File_Dependence = Null_Iir_List then - Current_File_Dependence := Create_Iir_List; - Set_File_Dependence_List (File, Current_File_Dependence); - end if; - end if; - end if; - if Flag_Load_All_Design_Units then -- Load and analyze UNIT. Load_Design_Unit (Unit, From); @@ -198,15 +166,6 @@ package body Vhdl.Configuration is Set_Configuration_Done_Flag (Unit, True); - -- Restore now the file dependence. - -- Indeed, we may add a package body when we are in a package - -- declaration. However, the later does not depend on the former. - -- The file which depends on the package declaration also depends on - -- the package body. - if Flag_Build_File_Dependence then - Current_File_Dependence := Prev_File_Dependence; - end if; - if Get_Kind (Lib_Unit) = Iir_Kind_Package_Declaration then -- Add body (if any). declare diff --git a/src/vhdl/vhdl-nodes.adb b/src/vhdl/vhdl-nodes.adb index 3891f3f13..e3ece3128 100644 --- a/src/vhdl/vhdl-nodes.adb +++ b/src/vhdl/vhdl-nodes.adb @@ -1424,24 +1424,6 @@ package body Vhdl.Nodes is Set_Field0 (File, Lib); end Set_Library; - function Get_File_Dependence_List (File : Iir_Design_File) return Iir_List - is - begin - pragma Assert (File /= Null_Iir); - pragma Assert (Has_File_Dependence_List (Get_Kind (File)), - "no field File_Dependence_List"); - return Iir_To_Iir_List (Get_Field1 (File)); - end Get_File_Dependence_List; - - procedure Set_File_Dependence_List (File : Iir_Design_File; Lst : Iir_List) - is - begin - pragma Assert (File /= Null_Iir); - pragma Assert (Has_File_Dependence_List (Get_Kind (File)), - "no field File_Dependence_List"); - Set_Field1 (File, Iir_List_To_Iir (Lst)); - end Set_File_Dependence_List; - function Get_Design_File_Filename (File : Iir_Design_File) return Name_Id is begin diff --git a/src/vhdl/vhdl-nodes.ads b/src/vhdl/vhdl-nodes.ads index 80d8b091b..23de77b2f 100644 --- a/src/vhdl/vhdl-nodes.ads +++ b/src/vhdl/vhdl-nodes.ads @@ -187,8 +187,6 @@ package Vhdl.Nodes is -- Get/Set_Library (Field0) -- Get/Set_Parent (Alias Field0) -- - -- Get/Set_File_Dependence_List (Field1) - -- -- Get/Set_Chain (Field2) -- -- Time when the whole file has been analyzed. This allows ordering @@ -7760,11 +7758,6 @@ package Vhdl.Nodes is function Get_Library (File : Iir_Design_File) return Iir; procedure Set_Library (File : Iir_Design_File; Lib : Iir); - -- List of files which this design file depends on. - -- Field: Field1 (uc) - function Get_File_Dependence_List (File : Iir_Design_File) return Iir_List; - procedure Set_File_Dependence_List (File : Iir_Design_File; Lst : Iir_List); - -- Identifier for the design file file name. -- Field: Field12 (pos) function Get_Design_File_Filename (File : Iir_Design_File) return Name_Id; diff --git a/src/vhdl/vhdl-nodes_meta.adb b/src/vhdl/vhdl-nodes_meta.adb index 64757ba69..7fd44159b 100644 --- a/src/vhdl/vhdl-nodes_meta.adb +++ b/src/vhdl/vhdl-nodes_meta.adb @@ -24,7 +24,6 @@ package body Vhdl.Nodes_Meta is Field_Analysis_Time_Stamp => Type_Time_Stamp_Id, Field_Design_File_Source => Type_Source_File_Entry, Field_Library => Type_Iir, - Field_File_Dependence_List => Type_Iir_List, Field_Design_File_Filename => Type_Name_Id, Field_Design_File_Directory => Type_Name_Id, Field_Design_File => Type_Iir, @@ -429,8 +428,6 @@ package body Vhdl.Nodes_Meta is return "design_file_source"; when Field_Library => return "library"; - when Field_File_Dependence_List => - return "file_dependence_list"; when Field_Design_File_Filename => return "design_file_filename"; when Field_Design_File_Directory => @@ -1865,8 +1862,6 @@ package body Vhdl.Nodes_Meta is return Attr_None; when Field_Library => return Attr_Ref; - when Field_File_Dependence_List => - return Attr_None; when Field_Design_File_Filename => return Attr_None; when Field_Design_File_Directory => @@ -2649,7 +2644,6 @@ package body Vhdl.Nodes_Meta is Field_Design_File_Source, Field_Elab_Flag, Field_Library, - Field_File_Dependence_List, Field_Chain, Field_First_Design_Unit, Field_Last_Design_Unit, @@ -5396,328 +5390,328 @@ package body Vhdl.Nodes_Meta is ( Iir_Kind_Unused => -1, Iir_Kind_Error => 6, - Iir_Kind_Design_File => 17, - Iir_Kind_Design_Unit => 33, - Iir_Kind_Library_Clause => 38, - Iir_Kind_Use_Clause => 42, - Iir_Kind_Context_Reference => 46, - Iir_Kind_PSL_Inherit_Spec => 50, - Iir_Kind_Integer_Literal => 55, - Iir_Kind_Floating_Point_Literal => 60, - Iir_Kind_Null_Literal => 62, - Iir_Kind_String_Literal8 => 73, - Iir_Kind_Physical_Int_Literal => 79, - Iir_Kind_Physical_Fp_Literal => 85, - Iir_Kind_Simple_Aggregate => 90, - Iir_Kind_Overflow_Literal => 93, - Iir_Kind_Unaffected_Waveform => 94, - Iir_Kind_Waveform_Element => 97, - Iir_Kind_Conditional_Waveform => 101, - Iir_Kind_Conditional_Expression => 105, - Iir_Kind_Association_Element_By_Expression => 114, - Iir_Kind_Association_Element_By_Name => 122, - Iir_Kind_Association_Element_By_Individual => 131, - Iir_Kind_Association_Element_Open => 138, - Iir_Kind_Association_Element_Package => 144, - Iir_Kind_Association_Element_Type => 152, - Iir_Kind_Association_Element_Subprogram => 158, - Iir_Kind_Association_Element_Terminal => 164, - Iir_Kind_Choice_By_Range => 172, - Iir_Kind_Choice_By_Expression => 180, - Iir_Kind_Choice_By_Others => 186, - Iir_Kind_Choice_By_None => 192, - Iir_Kind_Choice_By_Name => 199, - Iir_Kind_Entity_Aspect_Entity => 201, - Iir_Kind_Entity_Aspect_Configuration => 202, - Iir_Kind_Entity_Aspect_Open => 202, - Iir_Kind_Psl_Hierarchical_Name => 204, - Iir_Kind_Block_Configuration => 210, - Iir_Kind_Block_Header => 214, - Iir_Kind_Component_Configuration => 222, - Iir_Kind_Binding_Indication => 226, - Iir_Kind_Entity_Class => 228, - Iir_Kind_Attribute_Value => 236, - Iir_Kind_Signature => 241, - Iir_Kind_Aggregate_Info => 248, - Iir_Kind_Procedure_Call => 252, - Iir_Kind_Record_Element_Constraint => 260, - Iir_Kind_Array_Element_Resolution => 262, - Iir_Kind_Record_Resolution => 263, - Iir_Kind_Record_Element_Resolution => 266, - Iir_Kind_Break_Element => 270, - Iir_Kind_Attribute_Specification => 279, - Iir_Kind_Disconnection_Specification => 285, - Iir_Kind_Step_Limit_Specification => 291, - Iir_Kind_Configuration_Specification => 298, - Iir_Kind_Access_Type_Definition => 305, - Iir_Kind_Incomplete_Type_Definition => 312, - Iir_Kind_Interface_Type_Definition => 318, - Iir_Kind_File_Type_Definition => 324, - Iir_Kind_Protected_Type_Declaration => 335, - Iir_Kind_Record_Type_Definition => 345, - Iir_Kind_Array_Type_Definition => 356, - Iir_Kind_Array_Subtype_Definition => 373, - Iir_Kind_Record_Subtype_Definition => 386, - Iir_Kind_Access_Subtype_Definition => 394, - Iir_Kind_File_Subtype_Definition => 401, - Iir_Kind_Physical_Subtype_Definition => 411, - Iir_Kind_Floating_Subtype_Definition => 422, - Iir_Kind_Integer_Subtype_Definition => 432, - Iir_Kind_Enumeration_Subtype_Definition => 442, - Iir_Kind_Enumeration_Type_Definition => 453, - Iir_Kind_Integer_Type_Definition => 461, - Iir_Kind_Floating_Type_Definition => 469, - Iir_Kind_Physical_Type_Definition => 480, - Iir_Kind_Range_Expression => 488, - Iir_Kind_Protected_Type_Body => 496, - Iir_Kind_Wildcard_Type_Definition => 500, - Iir_Kind_Foreign_Vector_Type_Definition => 501, - Iir_Kind_Subtype_Definition => 508, - Iir_Kind_Scalar_Nature_Definition => 516, - Iir_Kind_Record_Nature_Definition => 529, - Iir_Kind_Array_Nature_Definition => 543, - Iir_Kind_Array_Subnature_Definition => 558, - Iir_Kind_Overload_List => 559, - Iir_Kind_Foreign_Module => 564, - Iir_Kind_Entity_Declaration => 577, - Iir_Kind_Configuration_Declaration => 587, - Iir_Kind_Context_Declaration => 593, - Iir_Kind_Package_Declaration => 608, - Iir_Kind_Package_Instantiation_Declaration => 622, - Iir_Kind_Vmode_Declaration => 634, - Iir_Kind_Vprop_Declaration => 646, - Iir_Kind_Vunit_Declaration => 659, - Iir_Kind_Package_Body => 667, - Iir_Kind_Architecture_Body => 680, - Iir_Kind_Type_Declaration => 687, - Iir_Kind_Anonymous_Type_Declaration => 693, - Iir_Kind_Subtype_Declaration => 701, - Iir_Kind_Nature_Declaration => 707, - Iir_Kind_Subnature_Declaration => 714, - Iir_Kind_Package_Header => 716, - Iir_Kind_Unit_Declaration => 725, - Iir_Kind_Library_Declaration => 733, - Iir_Kind_Component_Declaration => 743, - Iir_Kind_Attribute_Declaration => 750, - Iir_Kind_Group_Template_Declaration => 756, - Iir_Kind_Group_Declaration => 763, - Iir_Kind_Element_Declaration => 771, - Iir_Kind_Nature_Element_Declaration => 778, - Iir_Kind_Non_Object_Alias_Declaration => 786, - Iir_Kind_Psl_Declaration => 794, - Iir_Kind_Psl_Boolean_Parameter => 802, - Iir_Kind_Psl_Endpoint_Declaration => 816, - Iir_Kind_Enumeration_Literal => 828, - Iir_Kind_Function_Declaration => 855, - Iir_Kind_Procedure_Declaration => 879, - Iir_Kind_Function_Body => 889, - Iir_Kind_Procedure_Body => 900, - Iir_Kind_Function_Instantiation_Declaration => 911, - Iir_Kind_Procedure_Instantiation_Declaration => 921, - Iir_Kind_Terminal_Declaration => 931, - Iir_Kind_Object_Alias_Declaration => 943, - Iir_Kind_Free_Quantity_Declaration => 955, - Iir_Kind_Spectrum_Quantity_Declaration => 968, - Iir_Kind_Noise_Quantity_Declaration => 980, - Iir_Kind_Across_Quantity_Declaration => 996, - Iir_Kind_Through_Quantity_Declaration => 1012, - Iir_Kind_File_Declaration => 1027, - Iir_Kind_Guard_Signal_Declaration => 1041, - Iir_Kind_Signal_Declaration => 1058, - Iir_Kind_Variable_Declaration => 1071, - Iir_Kind_Constant_Declaration => 1086, - Iir_Kind_Iterator_Declaration => 1098, - Iir_Kind_Interface_Constant_Declaration => 1115, - Iir_Kind_Interface_Variable_Declaration => 1131, - Iir_Kind_Interface_Signal_Declaration => 1152, - Iir_Kind_Interface_File_Declaration => 1168, - Iir_Kind_Interface_Quantity_Declaration => 1184, - Iir_Kind_Interface_Terminal_Declaration => 1196, - Iir_Kind_Interface_Type_Declaration => 1208, - Iir_Kind_Interface_Package_Declaration => 1222, - Iir_Kind_Interface_Function_Declaration => 1242, - Iir_Kind_Interface_Procedure_Declaration => 1258, - Iir_Kind_Attribute_Implicit_Declaration => 1261, - Iir_Kind_Suspend_State_Declaration => 1265, - Iir_Kind_Identity_Operator => 1269, - Iir_Kind_Negation_Operator => 1273, - Iir_Kind_Absolute_Operator => 1277, - Iir_Kind_Not_Operator => 1281, - Iir_Kind_Implicit_Condition_Operator => 1285, - Iir_Kind_Condition_Operator => 1289, - Iir_Kind_Reduction_And_Operator => 1293, - Iir_Kind_Reduction_Or_Operator => 1297, - Iir_Kind_Reduction_Nand_Operator => 1301, - Iir_Kind_Reduction_Nor_Operator => 1305, - Iir_Kind_Reduction_Xor_Operator => 1309, - Iir_Kind_Reduction_Xnor_Operator => 1313, - Iir_Kind_And_Operator => 1318, - Iir_Kind_Or_Operator => 1323, - Iir_Kind_Nand_Operator => 1328, - Iir_Kind_Nor_Operator => 1333, - Iir_Kind_Xor_Operator => 1338, - Iir_Kind_Xnor_Operator => 1343, - Iir_Kind_Equality_Operator => 1348, - Iir_Kind_Inequality_Operator => 1353, - Iir_Kind_Less_Than_Operator => 1358, - Iir_Kind_Less_Than_Or_Equal_Operator => 1363, - Iir_Kind_Greater_Than_Operator => 1368, - Iir_Kind_Greater_Than_Or_Equal_Operator => 1373, - Iir_Kind_Match_Equality_Operator => 1378, - Iir_Kind_Match_Inequality_Operator => 1383, - Iir_Kind_Match_Less_Than_Operator => 1388, - Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1393, - Iir_Kind_Match_Greater_Than_Operator => 1398, - Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1403, - Iir_Kind_Sll_Operator => 1408, - Iir_Kind_Sla_Operator => 1413, - Iir_Kind_Srl_Operator => 1418, - Iir_Kind_Sra_Operator => 1423, - Iir_Kind_Rol_Operator => 1428, - Iir_Kind_Ror_Operator => 1433, - Iir_Kind_Addition_Operator => 1438, - Iir_Kind_Substraction_Operator => 1443, - Iir_Kind_Concatenation_Operator => 1448, - Iir_Kind_Multiplication_Operator => 1453, - Iir_Kind_Division_Operator => 1458, - Iir_Kind_Modulus_Operator => 1463, - Iir_Kind_Remainder_Operator => 1468, - Iir_Kind_Exponentiation_Operator => 1473, - Iir_Kind_Function_Call => 1481, - Iir_Kind_Aggregate => 1489, - Iir_Kind_Parenthesis_Expression => 1492, - Iir_Kind_Qualified_Expression => 1496, - Iir_Kind_Type_Conversion => 1501, - Iir_Kind_Allocator_By_Expression => 1506, - Iir_Kind_Allocator_By_Subtype => 1512, - Iir_Kind_Selected_Element => 1520, - Iir_Kind_Dereference => 1525, - Iir_Kind_Implicit_Dereference => 1530, - Iir_Kind_Slice_Name => 1537, - Iir_Kind_Indexed_Name => 1543, - Iir_Kind_Psl_Prev => 1549, - Iir_Kind_Psl_Stable => 1554, - Iir_Kind_Psl_Rose => 1559, - Iir_Kind_Psl_Fell => 1564, - Iir_Kind_Psl_Onehot => 1567, - Iir_Kind_Psl_Onehot0 => 1570, - Iir_Kind_Psl_Expression => 1572, - Iir_Kind_Sensitized_Process_Statement => 1594, - Iir_Kind_Process_Statement => 1615, - Iir_Kind_Concurrent_Simple_Signal_Assignment => 1628, - Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1641, - Iir_Kind_Concurrent_Selected_Signal_Assignment => 1655, - Iir_Kind_Concurrent_Assertion_Statement => 1663, - Iir_Kind_Concurrent_Procedure_Call_Statement => 1670, - Iir_Kind_Concurrent_Break_Statement => 1678, - Iir_Kind_Psl_Assert_Directive => 1692, - Iir_Kind_Psl_Assume_Directive => 1704, - Iir_Kind_Psl_Cover_Directive => 1716, - Iir_Kind_Psl_Restrict_Directive => 1727, - Iir_Kind_Block_Statement => 1741, - Iir_Kind_If_Generate_Statement => 1752, - Iir_Kind_Case_Generate_Statement => 1761, - Iir_Kind_For_Generate_Statement => 1770, - Iir_Kind_Component_Instantiation_Statement => 1782, - Iir_Kind_Psl_Default_Clock => 1785, - Iir_Kind_Generate_Statement_Body => 1796, - Iir_Kind_If_Generate_Else_Clause => 1802, - Iir_Kind_Simple_Simultaneous_Statement => 1809, - Iir_Kind_Simultaneous_Null_Statement => 1813, - Iir_Kind_Simultaneous_Procedural_Statement => 1824, - Iir_Kind_Simultaneous_Case_Statement => 1833, - Iir_Kind_Simultaneous_If_Statement => 1842, - Iir_Kind_Simultaneous_Elsif => 1848, - Iir_Kind_Simple_Signal_Assignment_Statement => 1859, - Iir_Kind_Conditional_Signal_Assignment_Statement => 1870, - Iir_Kind_Selected_Waveform_Assignment_Statement => 1882, - Iir_Kind_Signal_Force_Assignment_Statement => 1892, - Iir_Kind_Signal_Release_Assignment_Statement => 1901, - Iir_Kind_Null_Statement => 1905, - Iir_Kind_Assertion_Statement => 1912, - Iir_Kind_Report_Statement => 1918, - Iir_Kind_Wait_Statement => 1926, - Iir_Kind_Variable_Assignment_Statement => 1933, - Iir_Kind_Conditional_Variable_Assignment_Statement => 1940, - Iir_Kind_Return_Statement => 1946, - Iir_Kind_For_Loop_Statement => 1957, - Iir_Kind_While_Loop_Statement => 1968, - Iir_Kind_Next_Statement => 1975, - Iir_Kind_Exit_Statement => 1982, - Iir_Kind_Case_Statement => 1991, - Iir_Kind_Procedure_Call_Statement => 1997, - Iir_Kind_Break_Statement => 2004, - Iir_Kind_If_Statement => 2014, - Iir_Kind_Suspend_State_Statement => 2019, - Iir_Kind_Elsif => 2025, - Iir_Kind_Character_Literal => 2032, - Iir_Kind_Simple_Name => 2039, - Iir_Kind_Selected_Name => 2047, - Iir_Kind_Operator_Symbol => 2052, - Iir_Kind_Reference_Name => 2057, - Iir_Kind_External_Constant_Name => 2066, - Iir_Kind_External_Signal_Name => 2076, - Iir_Kind_External_Variable_Name => 2086, - Iir_Kind_Selected_By_All_Name => 2092, - Iir_Kind_Parenthesis_Name => 2097, - Iir_Kind_Package_Pathname => 2101, - Iir_Kind_Absolute_Pathname => 2102, - Iir_Kind_Relative_Pathname => 2103, - Iir_Kind_Pathname_Element => 2108, - Iir_Kind_Base_Attribute => 2110, - Iir_Kind_Subtype_Attribute => 2115, - Iir_Kind_Element_Attribute => 2120, - Iir_Kind_Across_Attribute => 2125, - Iir_Kind_Through_Attribute => 2130, - Iir_Kind_Nature_Reference_Attribute => 2134, - Iir_Kind_Left_Type_Attribute => 2139, - Iir_Kind_Right_Type_Attribute => 2144, - Iir_Kind_High_Type_Attribute => 2149, - Iir_Kind_Low_Type_Attribute => 2154, - Iir_Kind_Ascending_Type_Attribute => 2159, - Iir_Kind_Image_Attribute => 2165, - Iir_Kind_Value_Attribute => 2171, - Iir_Kind_Pos_Attribute => 2177, - Iir_Kind_Val_Attribute => 2183, - Iir_Kind_Succ_Attribute => 2189, - Iir_Kind_Pred_Attribute => 2195, - Iir_Kind_Leftof_Attribute => 2201, - Iir_Kind_Rightof_Attribute => 2207, - Iir_Kind_Signal_Slew_Attribute => 2215, - Iir_Kind_Quantity_Slew_Attribute => 2223, - Iir_Kind_Ramp_Attribute => 2231, - Iir_Kind_Zoh_Attribute => 2239, - Iir_Kind_Ltf_Attribute => 2247, - Iir_Kind_Ztf_Attribute => 2257, - Iir_Kind_Dot_Attribute => 2264, - Iir_Kind_Integ_Attribute => 2271, - Iir_Kind_Quantity_Delayed_Attribute => 2279, - Iir_Kind_Above_Attribute => 2287, - Iir_Kind_Delayed_Attribute => 2296, - Iir_Kind_Stable_Attribute => 2305, - Iir_Kind_Quiet_Attribute => 2314, - Iir_Kind_Transaction_Attribute => 2323, - Iir_Kind_Event_Attribute => 2327, - Iir_Kind_Active_Attribute => 2331, - Iir_Kind_Last_Event_Attribute => 2335, - Iir_Kind_Last_Active_Attribute => 2339, - Iir_Kind_Last_Value_Attribute => 2343, - Iir_Kind_Driving_Attribute => 2347, - Iir_Kind_Driving_Value_Attribute => 2351, - Iir_Kind_Behavior_Attribute => 2351, - Iir_Kind_Structure_Attribute => 2351, - Iir_Kind_Simple_Name_Attribute => 2358, - Iir_Kind_Instance_Name_Attribute => 2363, - Iir_Kind_Path_Name_Attribute => 2368, - Iir_Kind_Left_Array_Attribute => 2375, - Iir_Kind_Right_Array_Attribute => 2382, - Iir_Kind_High_Array_Attribute => 2389, - Iir_Kind_Low_Array_Attribute => 2396, - Iir_Kind_Length_Array_Attribute => 2403, - Iir_Kind_Ascending_Array_Attribute => 2410, - Iir_Kind_Range_Array_Attribute => 2417, - Iir_Kind_Reverse_Range_Array_Attribute => 2424, - Iir_Kind_Attribute_Name => 2433 + Iir_Kind_Design_File => 16, + Iir_Kind_Design_Unit => 32, + Iir_Kind_Library_Clause => 37, + Iir_Kind_Use_Clause => 41, + Iir_Kind_Context_Reference => 45, + Iir_Kind_PSL_Inherit_Spec => 49, + Iir_Kind_Integer_Literal => 54, + Iir_Kind_Floating_Point_Literal => 59, + Iir_Kind_Null_Literal => 61, + Iir_Kind_String_Literal8 => 72, + Iir_Kind_Physical_Int_Literal => 78, + Iir_Kind_Physical_Fp_Literal => 84, + Iir_Kind_Simple_Aggregate => 89, + Iir_Kind_Overflow_Literal => 92, + Iir_Kind_Unaffected_Waveform => 93, + Iir_Kind_Waveform_Element => 96, + Iir_Kind_Conditional_Waveform => 100, + Iir_Kind_Conditional_Expression => 104, + Iir_Kind_Association_Element_By_Expression => 113, + Iir_Kind_Association_Element_By_Name => 121, + Iir_Kind_Association_Element_By_Individual => 130, + Iir_Kind_Association_Element_Open => 137, + Iir_Kind_Association_Element_Package => 143, + Iir_Kind_Association_Element_Type => 151, + Iir_Kind_Association_Element_Subprogram => 157, + Iir_Kind_Association_Element_Terminal => 163, + Iir_Kind_Choice_By_Range => 171, + Iir_Kind_Choice_By_Expression => 179, + Iir_Kind_Choice_By_Others => 185, + Iir_Kind_Choice_By_None => 191, + Iir_Kind_Choice_By_Name => 198, + Iir_Kind_Entity_Aspect_Entity => 200, + Iir_Kind_Entity_Aspect_Configuration => 201, + Iir_Kind_Entity_Aspect_Open => 201, + Iir_Kind_Psl_Hierarchical_Name => 203, + Iir_Kind_Block_Configuration => 209, + Iir_Kind_Block_Header => 213, + Iir_Kind_Component_Configuration => 221, + Iir_Kind_Binding_Indication => 225, + Iir_Kind_Entity_Class => 227, + Iir_Kind_Attribute_Value => 235, + Iir_Kind_Signature => 240, + Iir_Kind_Aggregate_Info => 247, + Iir_Kind_Procedure_Call => 251, + Iir_Kind_Record_Element_Constraint => 259, + Iir_Kind_Array_Element_Resolution => 261, + Iir_Kind_Record_Resolution => 262, + Iir_Kind_Record_Element_Resolution => 265, + Iir_Kind_Break_Element => 269, + Iir_Kind_Attribute_Specification => 278, + Iir_Kind_Disconnection_Specification => 284, + Iir_Kind_Step_Limit_Specification => 290, + Iir_Kind_Configuration_Specification => 297, + Iir_Kind_Access_Type_Definition => 304, + Iir_Kind_Incomplete_Type_Definition => 311, + Iir_Kind_Interface_Type_Definition => 317, + Iir_Kind_File_Type_Definition => 323, + Iir_Kind_Protected_Type_Declaration => 334, + Iir_Kind_Record_Type_Definition => 344, + Iir_Kind_Array_Type_Definition => 355, + Iir_Kind_Array_Subtype_Definition => 372, + Iir_Kind_Record_Subtype_Definition => 385, + Iir_Kind_Access_Subtype_Definition => 393, + Iir_Kind_File_Subtype_Definition => 400, + Iir_Kind_Physical_Subtype_Definition => 410, + Iir_Kind_Floating_Subtype_Definition => 421, + Iir_Kind_Integer_Subtype_Definition => 431, + Iir_Kind_Enumeration_Subtype_Definition => 441, + Iir_Kind_Enumeration_Type_Definition => 452, + Iir_Kind_Integer_Type_Definition => 460, + Iir_Kind_Floating_Type_Definition => 468, + Iir_Kind_Physical_Type_Definition => 479, + Iir_Kind_Range_Expression => 487, + Iir_Kind_Protected_Type_Body => 495, + Iir_Kind_Wildcard_Type_Definition => 499, + Iir_Kind_Foreign_Vector_Type_Definition => 500, + Iir_Kind_Subtype_Definition => 507, + Iir_Kind_Scalar_Nature_Definition => 515, + Iir_Kind_Record_Nature_Definition => 528, + Iir_Kind_Array_Nature_Definition => 542, + Iir_Kind_Array_Subnature_Definition => 557, + Iir_Kind_Overload_List => 558, + Iir_Kind_Foreign_Module => 563, + Iir_Kind_Entity_Declaration => 576, + Iir_Kind_Configuration_Declaration => 586, + Iir_Kind_Context_Declaration => 592, + Iir_Kind_Package_Declaration => 607, + Iir_Kind_Package_Instantiation_Declaration => 621, + Iir_Kind_Vmode_Declaration => 633, + Iir_Kind_Vprop_Declaration => 645, + Iir_Kind_Vunit_Declaration => 658, + Iir_Kind_Package_Body => 666, + Iir_Kind_Architecture_Body => 679, + Iir_Kind_Type_Declaration => 686, + Iir_Kind_Anonymous_Type_Declaration => 692, + Iir_Kind_Subtype_Declaration => 700, + Iir_Kind_Nature_Declaration => 706, + Iir_Kind_Subnature_Declaration => 713, + Iir_Kind_Package_Header => 715, + Iir_Kind_Unit_Declaration => 724, + Iir_Kind_Library_Declaration => 732, + Iir_Kind_Component_Declaration => 742, + Iir_Kind_Attribute_Declaration => 749, + Iir_Kind_Group_Template_Declaration => 755, + Iir_Kind_Group_Declaration => 762, + Iir_Kind_Element_Declaration => 770, + Iir_Kind_Nature_Element_Declaration => 777, + Iir_Kind_Non_Object_Alias_Declaration => 785, + Iir_Kind_Psl_Declaration => 793, + Iir_Kind_Psl_Boolean_Parameter => 801, + Iir_Kind_Psl_Endpoint_Declaration => 815, + Iir_Kind_Enumeration_Literal => 827, + Iir_Kind_Function_Declaration => 854, + Iir_Kind_Procedure_Declaration => 878, + Iir_Kind_Function_Body => 888, + Iir_Kind_Procedure_Body => 899, + Iir_Kind_Function_Instantiation_Declaration => 910, + Iir_Kind_Procedure_Instantiation_Declaration => 920, + Iir_Kind_Terminal_Declaration => 930, + Iir_Kind_Object_Alias_Declaration => 942, + Iir_Kind_Free_Quantity_Declaration => 954, + Iir_Kind_Spectrum_Quantity_Declaration => 967, + Iir_Kind_Noise_Quantity_Declaration => 979, + Iir_Kind_Across_Quantity_Declaration => 995, + Iir_Kind_Through_Quantity_Declaration => 1011, + Iir_Kind_File_Declaration => 1026, + Iir_Kind_Guard_Signal_Declaration => 1040, + Iir_Kind_Signal_Declaration => 1057, + Iir_Kind_Variable_Declaration => 1070, + Iir_Kind_Constant_Declaration => 1085, + Iir_Kind_Iterator_Declaration => 1097, + Iir_Kind_Interface_Constant_Declaration => 1114, + Iir_Kind_Interface_Variable_Declaration => 1130, + Iir_Kind_Interface_Signal_Declaration => 1151, + Iir_Kind_Interface_File_Declaration => 1167, + Iir_Kind_Interface_Quantity_Declaration => 1183, + Iir_Kind_Interface_Terminal_Declaration => 1195, + Iir_Kind_Interface_Type_Declaration => 1207, + Iir_Kind_Interface_Package_Declaration => 1221, + Iir_Kind_Interface_Function_Declaration => 1241, + Iir_Kind_Interface_Procedure_Declaration => 1257, + Iir_Kind_Attribute_Implicit_Declaration => 1260, + Iir_Kind_Suspend_State_Declaration => 1264, + Iir_Kind_Identity_Operator => 1268, + Iir_Kind_Negation_Operator => 1272, + Iir_Kind_Absolute_Operator => 1276, + Iir_Kind_Not_Operator => 1280, + Iir_Kind_Implicit_Condition_Operator => 1284, + Iir_Kind_Condition_Operator => 1288, + Iir_Kind_Reduction_And_Operator => 1292, + Iir_Kind_Reduction_Or_Operator => 1296, + Iir_Kind_Reduction_Nand_Operator => 1300, + Iir_Kind_Reduction_Nor_Operator => 1304, + Iir_Kind_Reduction_Xor_Operator => 1308, + Iir_Kind_Reduction_Xnor_Operator => 1312, + Iir_Kind_And_Operator => 1317, + Iir_Kind_Or_Operator => 1322, + Iir_Kind_Nand_Operator => 1327, + Iir_Kind_Nor_Operator => 1332, + Iir_Kind_Xor_Operator => 1337, + Iir_Kind_Xnor_Operator => 1342, + Iir_Kind_Equality_Operator => 1347, + Iir_Kind_Inequality_Operator => 1352, + Iir_Kind_Less_Than_Operator => 1357, + Iir_Kind_Less_Than_Or_Equal_Operator => 1362, + Iir_Kind_Greater_Than_Operator => 1367, + Iir_Kind_Greater_Than_Or_Equal_Operator => 1372, + Iir_Kind_Match_Equality_Operator => 1377, + Iir_Kind_Match_Inequality_Operator => 1382, + Iir_Kind_Match_Less_Than_Operator => 1387, + Iir_Kind_Match_Less_Than_Or_Equal_Operator => 1392, + Iir_Kind_Match_Greater_Than_Operator => 1397, + Iir_Kind_Match_Greater_Than_Or_Equal_Operator => 1402, + Iir_Kind_Sll_Operator => 1407, + Iir_Kind_Sla_Operator => 1412, + Iir_Kind_Srl_Operator => 1417, + Iir_Kind_Sra_Operator => 1422, + Iir_Kind_Rol_Operator => 1427, + Iir_Kind_Ror_Operator => 1432, + Iir_Kind_Addition_Operator => 1437, + Iir_Kind_Substraction_Operator => 1442, + Iir_Kind_Concatenation_Operator => 1447, + Iir_Kind_Multiplication_Operator => 1452, + Iir_Kind_Division_Operator => 1457, + Iir_Kind_Modulus_Operator => 1462, + Iir_Kind_Remainder_Operator => 1467, + Iir_Kind_Exponentiation_Operator => 1472, + Iir_Kind_Function_Call => 1480, + Iir_Kind_Aggregate => 1488, + Iir_Kind_Parenthesis_Expression => 1491, + Iir_Kind_Qualified_Expression => 1495, + Iir_Kind_Type_Conversion => 1500, + Iir_Kind_Allocator_By_Expression => 1505, + Iir_Kind_Allocator_By_Subtype => 1511, + Iir_Kind_Selected_Element => 1519, + Iir_Kind_Dereference => 1524, + Iir_Kind_Implicit_Dereference => 1529, + Iir_Kind_Slice_Name => 1536, + Iir_Kind_Indexed_Name => 1542, + Iir_Kind_Psl_Prev => 1548, + Iir_Kind_Psl_Stable => 1553, + Iir_Kind_Psl_Rose => 1558, + Iir_Kind_Psl_Fell => 1563, + Iir_Kind_Psl_Onehot => 1566, + Iir_Kind_Psl_Onehot0 => 1569, + Iir_Kind_Psl_Expression => 1571, + Iir_Kind_Sensitized_Process_Statement => 1593, + Iir_Kind_Process_Statement => 1614, + Iir_Kind_Concurrent_Simple_Signal_Assignment => 1627, + Iir_Kind_Concurrent_Conditional_Signal_Assignment => 1640, + Iir_Kind_Concurrent_Selected_Signal_Assignment => 1654, + Iir_Kind_Concurrent_Assertion_Statement => 1662, + Iir_Kind_Concurrent_Procedure_Call_Statement => 1669, + Iir_Kind_Concurrent_Break_Statement => 1677, + Iir_Kind_Psl_Assert_Directive => 1691, + Iir_Kind_Psl_Assume_Directive => 1703, + Iir_Kind_Psl_Cover_Directive => 1715, + Iir_Kind_Psl_Restrict_Directive => 1726, + Iir_Kind_Block_Statement => 1740, + Iir_Kind_If_Generate_Statement => 1751, + Iir_Kind_Case_Generate_Statement => 1760, + Iir_Kind_For_Generate_Statement => 1769, + Iir_Kind_Component_Instantiation_Statement => 1781, + Iir_Kind_Psl_Default_Clock => 1784, + Iir_Kind_Generate_Statement_Body => 1795, + Iir_Kind_If_Generate_Else_Clause => 1801, + Iir_Kind_Simple_Simultaneous_Statement => 1808, + Iir_Kind_Simultaneous_Null_Statement => 1812, + Iir_Kind_Simultaneous_Procedural_Statement => 1823, + Iir_Kind_Simultaneous_Case_Statement => 1832, + Iir_Kind_Simultaneous_If_Statement => 1841, + Iir_Kind_Simultaneous_Elsif => 1847, + Iir_Kind_Simple_Signal_Assignment_Statement => 1858, + Iir_Kind_Conditional_Signal_Assignment_Statement => 1869, + Iir_Kind_Selected_Waveform_Assignment_Statement => 1881, + Iir_Kind_Signal_Force_Assignment_Statement => 1891, + Iir_Kind_Signal_Release_Assignment_Statement => 1900, + Iir_Kind_Null_Statement => 1904, + Iir_Kind_Assertion_Statement => 1911, + Iir_Kind_Report_Statement => 1917, + Iir_Kind_Wait_Statement => 1925, + Iir_Kind_Variable_Assignment_Statement => 1932, + Iir_Kind_Conditional_Variable_Assignment_Statement => 1939, + Iir_Kind_Return_Statement => 1945, + Iir_Kind_For_Loop_Statement => 1956, + Iir_Kind_While_Loop_Statement => 1967, + Iir_Kind_Next_Statement => 1974, + Iir_Kind_Exit_Statement => 1981, + Iir_Kind_Case_Statement => 1990, + Iir_Kind_Procedure_Call_Statement => 1996, + Iir_Kind_Break_Statement => 2003, + Iir_Kind_If_Statement => 2013, + Iir_Kind_Suspend_State_Statement => 2018, + Iir_Kind_Elsif => 2024, + Iir_Kind_Character_Literal => 2031, + Iir_Kind_Simple_Name => 2038, + Iir_Kind_Selected_Name => 2046, + Iir_Kind_Operator_Symbol => 2051, + Iir_Kind_Reference_Name => 2056, + Iir_Kind_External_Constant_Name => 2065, + Iir_Kind_External_Signal_Name => 2075, + Iir_Kind_External_Variable_Name => 2085, + Iir_Kind_Selected_By_All_Name => 2091, + Iir_Kind_Parenthesis_Name => 2096, + Iir_Kind_Package_Pathname => 2100, + Iir_Kind_Absolute_Pathname => 2101, + Iir_Kind_Relative_Pathname => 2102, + Iir_Kind_Pathname_Element => 2107, + Iir_Kind_Base_Attribute => 2109, + Iir_Kind_Subtype_Attribute => 2114, + Iir_Kind_Element_Attribute => 2119, + Iir_Kind_Across_Attribute => 2124, + Iir_Kind_Through_Attribute => 2129, + Iir_Kind_Nature_Reference_Attribute => 2133, + Iir_Kind_Left_Type_Attribute => 2138, + Iir_Kind_Right_Type_Attribute => 2143, + Iir_Kind_High_Type_Attribute => 2148, + Iir_Kind_Low_Type_Attribute => 2153, + Iir_Kind_Ascending_Type_Attribute => 2158, + Iir_Kind_Image_Attribute => 2164, + Iir_Kind_Value_Attribute => 2170, + Iir_Kind_Pos_Attribute => 2176, + Iir_Kind_Val_Attribute => 2182, + Iir_Kind_Succ_Attribute => 2188, + Iir_Kind_Pred_Attribute => 2194, + Iir_Kind_Leftof_Attribute => 2200, + Iir_Kind_Rightof_Attribute => 2206, + Iir_Kind_Signal_Slew_Attribute => 2214, + Iir_Kind_Quantity_Slew_Attribute => 2222, + Iir_Kind_Ramp_Attribute => 2230, + Iir_Kind_Zoh_Attribute => 2238, + Iir_Kind_Ltf_Attribute => 2246, + Iir_Kind_Ztf_Attribute => 2256, + Iir_Kind_Dot_Attribute => 2263, + Iir_Kind_Integ_Attribute => 2270, + Iir_Kind_Quantity_Delayed_Attribute => 2278, + Iir_Kind_Above_Attribute => 2286, + Iir_Kind_Delayed_Attribute => 2295, + Iir_Kind_Stable_Attribute => 2304, + Iir_Kind_Quiet_Attribute => 2313, + Iir_Kind_Transaction_Attribute => 2322, + Iir_Kind_Event_Attribute => 2326, + Iir_Kind_Active_Attribute => 2330, + Iir_Kind_Last_Event_Attribute => 2334, + Iir_Kind_Last_Active_Attribute => 2338, + Iir_Kind_Last_Value_Attribute => 2342, + Iir_Kind_Driving_Attribute => 2346, + Iir_Kind_Driving_Value_Attribute => 2350, + Iir_Kind_Behavior_Attribute => 2350, + Iir_Kind_Structure_Attribute => 2350, + Iir_Kind_Simple_Name_Attribute => 2357, + Iir_Kind_Instance_Name_Attribute => 2362, + Iir_Kind_Path_Name_Attribute => 2367, + Iir_Kind_Left_Array_Attribute => 2374, + Iir_Kind_Right_Array_Attribute => 2381, + Iir_Kind_High_Array_Attribute => 2388, + Iir_Kind_Low_Array_Attribute => 2395, + Iir_Kind_Length_Array_Attribute => 2402, + Iir_Kind_Ascending_Array_Attribute => 2409, + Iir_Kind_Range_Array_Attribute => 2416, + Iir_Kind_Reverse_Range_Array_Attribute => 2423, + Iir_Kind_Attribute_Name => 2432 ); function Get_Fields_First (K : Iir_Kind) return Fields_Index is @@ -7388,8 +7382,6 @@ package body Vhdl.Nodes_Meta is begin pragma Assert (Fields_Type (F) = Type_Iir_List); case F is - when Field_File_Dependence_List => - return Get_File_Dependence_List (N); when Field_Dependence_List => return Get_Dependence_List (N); when Field_Analysis_Checks_List => @@ -7414,8 +7406,6 @@ package body Vhdl.Nodes_Meta is begin pragma Assert (Fields_Type (F) = Type_Iir_List); case F is - when Field_File_Dependence_List => - Set_File_Dependence_List (N, V); when Field_Dependence_List => Set_Dependence_List (N, V); when Field_Analysis_Checks_List => @@ -7994,11 +7984,6 @@ package body Vhdl.Nodes_Meta is return K = Iir_Kind_Design_File; end Has_Library; - function Has_File_Dependence_List (K : Iir_Kind) return Boolean is - begin - return K = Iir_Kind_Design_File; - end Has_File_Dependence_List; - function Has_Design_File_Filename (K : Iir_Kind) return Boolean is begin return K = Iir_Kind_Design_File; diff --git a/src/vhdl/vhdl-nodes_meta.ads b/src/vhdl/vhdl-nodes_meta.ads index dc148e50d..0f0fe9cb9 100644 --- a/src/vhdl/vhdl-nodes_meta.ads +++ b/src/vhdl/vhdl-nodes_meta.ads @@ -68,7 +68,6 @@ package Vhdl.Nodes_Meta is Field_Analysis_Time_Stamp, Field_Design_File_Source, Field_Library, - Field_File_Dependence_List, Field_Design_File_Filename, Field_Design_File_Directory, Field_Design_File, @@ -667,7 +666,6 @@ package Vhdl.Nodes_Meta is function Has_Analysis_Time_Stamp (K : Iir_Kind) return Boolean; function Has_Design_File_Source (K : Iir_Kind) return Boolean; function Has_Library (K : Iir_Kind) return Boolean; - function Has_File_Dependence_List (K : Iir_Kind) return Boolean; function Has_Design_File_Filename (K : Iir_Kind) return Boolean; function Has_Design_File_Directory (K : Iir_Kind) return Boolean; function Has_Design_File (K : Iir_Kind) return Boolean; |