diff options
| author | Patrick Lehmann <Patrick.Lehmann@plc2.de> | 2021-07-27 19:02:10 +0200 | 
|---|---|---|
| committer | umarcor <unai.martinezcorral@ehu.eus> | 2021-08-23 16:35:32 +0200 | 
| commit | ee933a5fc78353e7a87fe64616b25387fdc12b2b (patch) | |
| tree | 61cd6805c9edb2d6d751bea8673fd4c320369b14 | |
| parent | de44ee29acb01edfb429eb88d96f0bb904adefd0 (diff) | |
| download | ghdl-ee933a5fc78353e7a87fe64616b25387fdc12b2b.tar.gz ghdl-ee933a5fc78353e7a87fe64616b25387fdc12b2b.tar.bz2 ghdl-ee933a5fc78353e7a87fe64616b25387fdc12b2b.zip  | |
Handle more concurrent statements and report as not implemented yet.
| -rw-r--r-- | pyGHDL/dom/_Translate.py | 49 | 
1 files changed, 48 insertions, 1 deletions
diff --git a/pyGHDL/dom/_Translate.py b/pyGHDL/dom/_Translate.py index eac5476c9..84b99a4a3 100644 --- a/pyGHDL/dom/_Translate.py +++ b/pyGHDL/dom/_Translate.py @@ -762,12 +762,36 @@ def GetStatementsFromChainedNodes(                      label=label, line=pos.Line                  )              ) +        elif kind == nodes.Iir_Kind.Process_Statement: +            print( +                "[NOT IMPLEMENTED] Process (label: '{label}') without sensitivity list at line {line}".format( +                    label=label, line=pos.Line +                ) +            )          elif kind == nodes.Iir_Kind.Concurrent_Simple_Signal_Assignment:              print(                  "[NOT IMPLEMENTED] Concurrent (simple) signal assignment (label: '{label}') at line {line}".format(                      label=label, line=pos.Line                  )              ) +        elif kind == nodes.Iir_Kind.Concurrent_Conditional_Signal_Assignment: +            print( +                "[NOT IMPLEMENTED] Concurrent (conditional) signal assignment (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            ) +        elif kind == nodes.Iir_Kind.Concurrent_Selected_Signal_Assignment: +            print( +                "[NOT IMPLEMENTED] Concurrent (selected) signal assignment (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            ) +        elif kind == nodes.Iir_Kind.Concurrent_Procedure_Call_Statement: +            print( +                "[NOT IMPLEMENTED] Concurrent procedure call (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            )          elif kind == nodes.Iir_Kind.Component_Instantiation_Statement:              instantiatedUnit = nodes.Get_Instantiated_Unit(statement)              instantiatedUnitKind = GetIirKindOfNode(instantiatedUnit) @@ -818,9 +842,32 @@ def GetStatementsFromChainedNodes(                          column=pos.Column,                      )                  ) -          elif kind == nodes.Iir_Kind.Block_Statement:              yield ConcurrentBlockStatement.parse(statement, label) +        elif kind == nodes.Iir_Kind.If_Generate_Statement: +            print( +                "[NOT IMPLEMENTED] If-generate statement (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            ) +        elif kind == nodes.Iir_Kind.For_Generate_Statement: +            print( +                "[NOT IMPLEMENTED] For-generate statement (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            ) +        elif kind == nodes.Iir_Kind.Case_Generate_Statement: +            print( +                "[NOT IMPLEMENTED] Case-generate statement (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            ) +        elif kind == nodes.Iir_Kind.Psl_Assert_Directive: +            print( +                "[NOT IMPLEMENTED] PSL assert directive (label: '{label}') at line {line}".format( +                    label=label, line=pos.Line +                ) +            )          else:              raise DOMException(                  "Unknown statement of kind '{kind}' in {entity} '{name}' at {file}:{line}:{column}.".format(  | 
