diff options
author | Patrick Lehmann <Patrick.Lehmann@plc2.de> | 2023-04-14 07:42:22 +0200 |
---|---|---|
committer | Patrick Lehmann <Patrick.Lehmann@plc2.de> | 2023-04-14 07:42:22 +0200 |
commit | bee2616e7fed89c042f79592ddfafa2f6aea451e (patch) | |
tree | 2c06d1e8bf3adceb41a70b50b12ae30601135ef7 /pyGHDL/dom/DesignUnit.py | |
parent | e95d45e41d32c0d73179cea22c8b3ea812eafb41 (diff) | |
download | ghdl-bee2616e7fed89c042f79592ddfafa2f6aea451e.tar.gz ghdl-bee2616e7fed89c042f79592ddfafa2f6aea451e.tar.bz2 ghdl-bee2616e7fed89c042f79592ddfafa2f6aea451e.zip |
Fixes due to failing testcases.
Diffstat (limited to 'pyGHDL/dom/DesignUnit.py')
-rw-r--r-- | pyGHDL/dom/DesignUnit.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/pyGHDL/dom/DesignUnit.py b/pyGHDL/dom/DesignUnit.py index 6484d1532..ef1a37493 100644 --- a/pyGHDL/dom/DesignUnit.py +++ b/pyGHDL/dom/DesignUnit.py @@ -66,7 +66,7 @@ from pyGHDL.dom import DOMMixin, Position, DOMException from pyGHDL.dom._Utils import GetNameOfNode, GetDocumentationOfNode, GetPackageMemberSymbol from pyGHDL.dom._Translate import GetGenericsFromChainedNodes, GetPortsFromChainedNodes, GetName from pyGHDL.dom._Translate import GetDeclaredItemsFromChainedNodes, GetConcurrentStatementsFromChainedNodes -from pyGHDL.dom.Symbol import EntitySymbol, ContextReferenceSymbol, LibraryReferenceSymbol, PackageSymbol +from pyGHDL.dom.Symbol import EntitySymbol, ContextReferenceSymbol, LibraryReferenceSymbol, PackageSymbol, PackageMemberReferenceSymbol @export @@ -84,9 +84,11 @@ class UseClause(VHDLModel_UseClause, DOMMixin): @classmethod def parse(cls, useNode: Iir): - uses = [GetPackageMemberSymbol(nodes.Get_Selected_Name(useNode))] + nameNode = nodes.Get_Selected_Name(useNode) + uses = [PackageMemberReferenceSymbol(nameNode, GetName(nameNode))] for use in utils.chain_iter(nodes.Get_Use_Clause_Chain(useNode)): - uses.append(GetPackageMemberSymbol(nodes.Get_Selected_Name(use))) + nameNode = nodes.Get_Selected_Name(use) + uses.append(PackageMemberReferenceSymbol(nameNode, GetName(nameNode))) return cls(useNode, uses) @@ -99,9 +101,11 @@ class ContextReference(VHDLModel_ContextReference, DOMMixin): @classmethod def parse(cls, contextNode: Iir): - contexts = [GetContextSymbol(nodes.Get_Selected_Name(contextNode))] + nameNode = nodes.Get_Selected_Name(contextNode) + contexts = [ContextReferenceSymbol(nameNode, GetName(nameNode))] for context in utils.chain_iter(nodes.Get_Context_Reference_Chain(contextNode)): - contexts.append(GetContextSymbol(nodes.Get_Selected_Name(context))) + nameNode = nodes.Get_Selected_Name(context) + contexts.append(ContextReferenceSymbol(nameNode, GetName(nameNode))) return cls(contextNode, contexts) |