aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pyGHDL/dom/Type.py4
-rw-r--r--pyGHDL/dom/_Translate.py20
2 files changed, 24 insertions, 0 deletions
diff --git a/pyGHDL/dom/Type.py b/pyGHDL/dom/Type.py
index 98b92b3f0..969ec5643 100644
--- a/pyGHDL/dom/Type.py
+++ b/pyGHDL/dom/Type.py
@@ -229,6 +229,10 @@ class RecordType(VHDLModel_RecordType, DOMMixin):
else:
break
index += 1
+
+ # The last consecutive identifiers has no Identifier_List flag
+ if not nodes.Get_Has_Identifier_List(nextNode):
+ break
else:
index += 1
diff --git a/pyGHDL/dom/_Translate.py b/pyGHDL/dom/_Translate.py
index 8a76f8a4f..44915c026 100644
--- a/pyGHDL/dom/_Translate.py
+++ b/pyGHDL/dom/_Translate.py
@@ -499,6 +499,11 @@ def GetGenericsFromChainedNodes(
else:
generic = nextGeneric
break
+
+ # The last consecutive identifiers has no Identifier_List flag
+ if not nodes.Get_Has_Identifier_List(nextGeneric):
+ generic = nodes.Get_Chain(nextGeneric)
+ break
else:
generic = nodes.Null_Iir
else:
@@ -554,6 +559,11 @@ def GetPortsFromChainedNodes(
else:
port = nextPort
break
+
+ # The last consecutive identifiers has no Identifier_List flag
+ if not nodes.Get_Has_Identifier_List(nextPort):
+ port = nodes.Get_Chain(nextPort)
+ break
else:
port = nodes.Null_Iir
else:
@@ -622,6 +632,11 @@ def GetParameterFromChainedNodes(
else:
parameter = nextParameter
break
+
+ # The last consecutive identifiers has no Identifier_List flag
+ if not nodes.Get_Has_Identifier_List(nextParameter):
+ parameter = nodes.Get_Chain(nextParameter)
+ break
else:
parameter = nodes.Null_Iir
else:
@@ -754,6 +769,11 @@ def GetDeclaredItemsFromChainedNodes(
else:
item = nextItem
break
+
+ # The last consecutive identifiers has no Identifier_List flag
+ if not nodes.Get_Has_Identifier_List(nextItem):
+ item = nodes.Get_Chain(nextItem)
+ break
else:
item = nodes.Null_Iir
else: