From 3b9d3cbf01d0034b6b5a72e931f7d4c56056bd50 Mon Sep 17 00:00:00 2001 From: Dom Date: Fri, 28 Aug 2026 21:19:30 +0100 Subject: [PATCH 1/3] fix: labels are optional on concurrent procedures and signal assignments --- pyVHDLModel/Concurrent.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pyVHDLModel/Concurrent.py b/pyVHDLModel/Concurrent.py index 7a7c312b1..e73626289 100644 --- a/pyVHDLModel/Concurrent.py +++ b/pyVHDLModel/Concurrent.py @@ -454,7 +454,7 @@ class ConcurrentProcedureCall(ConcurrentStatement, ProcedureCallMixin): """ def __init__( self, - label: str, + label: Nullable[str], procedureName: Name, parameterAssociationItems: Nullable[Iterable[ParameterAssociationItem]] = None, parent: Nullable[ModelEntity] = None @@ -1376,7 +1376,7 @@ class ConcurrentSignalAssignment(ConcurrentStatement, SignalAssignmentMixin): * :class:`Concurrent simple signal assignment ` * :class:`Concurrent selected signal assignment ` * :class:`Conditional signal assignment ` """ - def __init__(self, label: str, target: SignalSymbol, parent: Nullable[ModelEntity] = None) -> None: + def __init__(self, label: Nullable[str], target: SignalSymbol, parent: Nullable[ModelEntity] = None) -> None: """ Initializes a concurrent signal assignment. @@ -1408,7 +1408,7 @@ class ConcurrentSimpleSignalAssignment(ConcurrentSignalAssignment, WaveformMixin * :class:`Sequential counterpart ` """ - def __init__(self, label: str, target: SignalSymbol, waveform: Iterable[WaveformElement], parent: Nullable[ModelEntity] = None) -> None: + def __init__(self, label: Nullable[str], target: SignalSymbol, waveform: Iterable[WaveformElement], parent: Nullable[ModelEntity] = None) -> None: """ Initializes a simple concurrent signal assignment. @@ -1449,7 +1449,7 @@ class ConcurrentSelectedSignalAssignment(ConcurrentSignalAssignment, ExpressionM def __init__( self, - label: str, + label: Nullable[str], target: SignalSymbol, expression: ExpressionUnion, selectedWaveforms: Iterable[SelectedWaveform], @@ -1496,7 +1496,7 @@ class ConcurrentConditionalSignalAssignment(ConcurrentSignalAssignment, Conditio def __init__( self, - label: str, + label: Nullable[str], target: SignalSymbol, conditionalWaveforms: Iterable[ConditionalWaveform], parent: Nullable[ModelEntity] = None From 3cf0a15223990dcfc0c49a0941857e02be843718 Mon Sep 17 00:00:00 2001 From: Dom Date: Fri, 28 Aug 2026 21:23:59 +0100 Subject: [PATCH 2/3] fix: messages in assertion statements are optional --- pyVHDLModel/Concurrent.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pyVHDLModel/Concurrent.py b/pyVHDLModel/Concurrent.py index e73626289..24908dcb4 100644 --- a/pyVHDLModel/Concurrent.py +++ b/pyVHDLModel/Concurrent.py @@ -1538,7 +1538,7 @@ class ConcurrentAssertStatement(ConcurrentStatement, AssertStatementMixin): def __init__( self, condition: ExpressionUnion, - message: ExpressionUnion, + message: Nullable[ExpressionUnion] = None, severity: Nullable[ExpressionUnion] = None, label: Nullable[str] = None, parent: Nullable[ModelEntity] = None From d386394cfc7c232b32b10c053a6fbb2641f0d49e Mon Sep 17 00:00:00 2001 From: Dom Date: Fri, 28 Aug 2026 21:26:05 +0100 Subject: [PATCH 3/3] fix: procedure names are symbols --- pyVHDLModel/Concurrent.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/pyVHDLModel/Concurrent.py b/pyVHDLModel/Concurrent.py index 24908dcb4..7fea8b7ec 100644 --- a/pyVHDLModel/Concurrent.py +++ b/pyVHDLModel/Concurrent.py @@ -57,6 +57,7 @@ from pyVHDLModel.Common import ConditionalWaveformsMixin, WaveformMixin from pyVHDLModel.Common import ExpressionMixin, SelectedWaveformsMixin from pyVHDLModel.Sequential import SequentialStatement, SequentialStatementsMixin +from pyVHDLModel.Symbol import Symbol ExpressionUnion = Union[ @@ -455,7 +456,7 @@ class ConcurrentProcedureCall(ConcurrentStatement, ProcedureCallMixin): def __init__( self, label: Nullable[str], - procedureName: Name, + procedureName: Symbol, parameterAssociationItems: Nullable[Iterable[ParameterAssociationItem]] = None, parent: Nullable[ModelEntity] = None ) -> None: