aboutsummaryrefslogtreecommitdiffstats
path: root/pyGHDL/dom
diff options
context:
space:
mode:
authorPatrick Lehmann <Patrick.Lehmann@plc2.de>2021-08-01 20:44:16 +0200
committerumarcor <unai.martinezcorral@ehu.eus>2021-08-23 16:35:33 +0200
commit9e612ed4cacdc6bd1e24b41747c49a3fd9b1f24e (patch)
treee9357c1bdb57f326844bf890f52efef2474c808c /pyGHDL/dom
parent5314281f0b8090f820ae64b652e40c300c2bdec2 (diff)
downloadghdl-9e612ed4cacdc6bd1e24b41747c49a3fd9b1f24e.tar.gz
ghdl-9e612ed4cacdc6bd1e24b41747c49a3fd9b1f24e.tar.bz2
ghdl-9e612ed4cacdc6bd1e24b41747c49a3fd9b1f24e.zip
Another fix for consecutive identifiers.
Diffstat (limited to 'pyGHDL/dom')
-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: