diff --git a/include/verilated.mk.in b/include/verilated.mk.in index 59a94486f..c5843920e 100644 --- a/include/verilated.mk.in +++ b/include/verilated.mk.in @@ -11,7 +11,7 @@ # Tool names. # These are computed at configuration time, and most are not ?= -# to avoid picking up potentilly incorrect Make implicit variables +# to avoid picking up potentially incorrect Make implicit variables AR = @AR@ CXX = @CXX@ LINK = @CXX@ @@ -154,7 +154,7 @@ ifeq ($(VM_SC),1) LDFLAGS += $(SYSTEMC_CXX_FLAGS) $(addprefix -L, $(SYSTEMC_LIBDIR)) SC_LIBS = -lsystemc ifneq ($(wildcard $(SYSTEMC_LIBDIR)/*numeric_bit*),) - # Systemc 1.2.1beta + # SystemC 1.2.1beta SC_LIBS += -lnumeric_bit -lqt endif endif diff --git a/include/verilated_fst_c.h b/include/verilated_fst_c.h index c19402b5e..6ff4ac3bf 100644 --- a/include/verilated_fst_c.h +++ b/include/verilated_fst_c.h @@ -230,12 +230,12 @@ public: // Set time units (s/ms, defaults to ns) // Users should not need to call this, as for Verilated models, these - // propage from the Verilated default timeunit + // propagate from the Verilated default timeunit void set_time_unit(const char* unitp) VL_MT_SAFE { m_sptrace.set_time_unit(unitp); } void set_time_unit(const std::string& unit) VL_MT_SAFE { m_sptrace.set_time_unit(unit); } // Set time resolution (s/ms, defaults to ns) // Users should not need to call this, as for Verilated models, these - // propage from the Verilated default timeprecision + // propagate from the Verilated default timeprecision void set_time_resolution(const char* unitp) VL_MT_SAFE { m_sptrace.set_time_resolution(unitp); } diff --git a/include/verilated_vcd_c.h b/include/verilated_vcd_c.h index a81bae28a..6d66f9fd1 100644 --- a/include/verilated_vcd_c.h +++ b/include/verilated_vcd_c.h @@ -301,12 +301,12 @@ public: // Set time units (s/ms, defaults to ns) // Users should not need to call this, as for Verilated models, these - // propage from the Verilated default timeunit + // propagate from the Verilated default timeunit void set_time_unit(const char* unit) VL_MT_SAFE { m_sptrace.set_time_unit(unit); } void set_time_unit(const std::string& unit) VL_MT_SAFE { m_sptrace.set_time_unit(unit); } // Set time resolution (s/ms, defaults to ns) // Users should not need to call this, as for Verilated models, these - // propage from the Verilated default timeprecision + // propagate from the Verilated default timeprecision void set_time_resolution(const char* unit) VL_MT_SAFE { m_sptrace.set_time_resolution(unit); } void set_time_resolution(const std::string& unit) VL_MT_SAFE { m_sptrace.set_time_resolution(unit); diff --git a/src/V3Ast.h b/src/V3Ast.h index 40ed725ba..937f98cd7 100644 --- a/src/V3Ast.h +++ b/src/V3Ast.h @@ -2248,7 +2248,7 @@ public: // statement is unlikely to be taken virtual bool isUnlikely() const { return false; } virtual int instrCount() const { return 0; } - // Iff node is identical to anouther node + // Iff node is identical to another node virtual bool isSame(const AstNode* samep) const { return type() == samep->type() && same(samep); } diff --git a/src/V3Cast.cpp b/src/V3Cast.cpp index c8181a118..bc84a404e 100644 --- a/src/V3Cast.cpp +++ b/src/V3Cast.cpp @@ -120,7 +120,7 @@ private: // All class types are castable to each other. If they are of different types, // a compilation error will be thrown, so an explicit cast is required. Types were // already checked by V3Width and dtypep of a condition operator is a type of their - // common base class, so both classes can be safetly casted. + // common base class, so both classes can be safely casted. const AstClassRefDType* const thenClassDtypep = VN_CAST(nodep->thenp()->dtypep(), ClassRefDType); const AstClassRefDType* const elseClassDtypep diff --git a/src/V3DfgAstToDfg.cpp b/src/V3DfgAstToDfg.cpp index 3b23986ff..2ba81bff6 100644 --- a/src/V3DfgAstToDfg.cpp +++ b/src/V3DfgAstToDfg.cpp @@ -14,7 +14,7 @@ // //************************************************************************* // -// Convert and AstModule to a DfgGraph. We proceed by visiting convertable logic blocks (e.g.: +// Convert and AstModule to a DfgGraph. We proceed by visiting convertible logic blocks (e.g.: // AstAssignW of appropriate type and with no delays), recursively constructing DfgVertex instances // for the expressions that compose the subject logic block. If all expressions in the current // logic block can be converted, then we delete the logic block (now represented in the DfgGraph), diff --git a/src/V3DfgOptimizer.cpp b/src/V3DfgOptimizer.cpp index ea49de41e..5571e1715 100644 --- a/src/V3DfgOptimizer.cpp +++ b/src/V3DfgOptimizer.cpp @@ -95,7 +95,7 @@ class DataflowExtractVisitor final : public VNVisitor { // VISIT methods void visit(AstNetlist* nodep) override { - // Analyse the whole design + // Analyze the whole design iterateChildrenConst(nodep); // Replace candidate expressions only reading combinationally driven signals with variables diff --git a/src/V3DfgPeephole.cpp b/src/V3DfgPeephole.cpp index f162c9ec9..f28876168 100644 --- a/src/V3DfgPeephole.cpp +++ b/src/V3DfgPeephole.cpp @@ -66,16 +66,16 @@ struct ReductionToBitwiseImpl {}; template <> struct ReductionToBitwiseImpl { using type = DfgAnd; }; template <> struct ReductionToBitwiseImpl { using type = DfgOr; }; template <> struct ReductionToBitwiseImpl { using type = DfgXor; }; -template -using ReductionToBitwise = typename ReductionToBitwiseImpl::type; +template +using ReductionToBitwise = typename ReductionToBitwiseImpl::type; template struct BitwiseToReductionImpl {}; template <> struct BitwiseToReductionImpl { using type = DfgRedAnd; }; template <> struct BitwiseToReductionImpl { using type = DfgRedOr; }; template <> struct BitwiseToReductionImpl { using type = DfgRedXor; }; -template -using BitwiseToReduction = typename BitwiseToReductionImpl::type; +template +using BitwiseToReduction = typename BitwiseToReductionImpl::type; namespace { template void foldOp(V3Number& out, const V3Number& src); diff --git a/src/V3Fork.cpp b/src/V3Fork.cpp index 133e4352f..6100c9cfd 100644 --- a/src/V3Fork.cpp +++ b/src/V3Fork.cpp @@ -25,7 +25,7 @@ // tasks to carry their own frames and as such they require their own // variable scopes. // There are two mechanisms that work together to achieve that. ForkVisitor -// moves bodies of forked prcesses into new tasks, which results in them getting their +// moves bodies of forked processes into new tasks, which results in them getting their // own scopes. The original statements get replaced with a call to the task which // passes the required variables by value. // The second mechanism, DynScopeVisitor, is designed to handle variables which can't be @@ -249,7 +249,7 @@ private: //###################################################################### // Dynamic scope visitor, creates classes and objects for dynamic scoping of variables and -// replaces references to varibles that need a dynamic scope with references to object's +// replaces references to variables that need a dynamic scope with references to object's // members class DynScopeVisitor final : public VNVisitor { @@ -388,7 +388,7 @@ private: } void visit(AstNodeFTaskRef* nodep) override { visit(static_cast(nodep)); - // We are before V3Timing, so unfortnately we need to treat any calls as suspending, + // We are before V3Timing, so unfortunately we need to treat any calls as suspending, // just to be safe. This might be improved if we could propagate suspendability // before doing all the other timing-related stuff. m_afterTimingControl = true; diff --git a/src/V3Fork.h b/src/V3Fork.h index 53bd6c19d..0a4578775 100644 --- a/src/V3Fork.h +++ b/src/V3Fork.h @@ -30,7 +30,7 @@ class AstNetlist; class V3Fork final { public: // Move/copy variables to "anonymous" objects if their lifetime might exceed the scope of a - // procedure that declared them. Update the references apropriately. + // procedure that declared them. Update the references appropriately. static void makeDynamicScopes(AstNetlist* nodep) VL_MT_DISABLED; // Create tasks out of blocks/statments that can outlive processes in which they were forked. // Return value: number of tasks created diff --git a/src/V3LinkDot.cpp b/src/V3LinkDot.cpp index b7c04c4b5..8ffb6a018 100644 --- a/src/V3LinkDot.cpp +++ b/src/V3LinkDot.cpp @@ -2537,7 +2537,7 @@ private: // m_curSymp is symbol table of outer expression // m_ds.m_dotSymp is symbol table relative to "."'s above now UASSERT_OBJ(m_ds.m_dotSymp, nodep, "nullptr lookup symbol table"); - // Generally resolved during Primay, but might be at param time under AstUnlinkedRef + // Generally resolved during Primary, but might be at param time under AstUnlinkedRef UASSERT_OBJ(m_statep->forPrimary() || m_statep->forPrearray(), nodep, "ParseRefs should no longer exist"); const DotStates lastStates = m_ds; diff --git a/src/V3MergeCond.cpp b/src/V3MergeCond.cpp index e5b078daa..cc7495e37 100644 --- a/src/V3MergeCond.cpp +++ b/src/V3MergeCond.cpp @@ -223,7 +223,7 @@ class CodeMotionAnalysisVisitor final : public VNVisitorConst { } } - // Analyse this statement + // Analyze this statement analyzeNode(nodep); // If there is an enclosing statement, propagate properties upwards @@ -261,7 +261,7 @@ class CodeMotionAnalysisVisitor final : public VNVisitorConst { if (!singletonListStart) m_stack.emplace_back(m_hasher); } - // Analyse node + // Analyze node if (AstNodeStmt* const stmtp = VN_CAST(nodep, NodeStmt)) { analyzeStmt(stmtp, /*tryCondMatch:*/ !singletonListStart); } else if (AstVarRef* const vrefp = VN_CAST(nodep, VarRef)) { @@ -281,7 +281,7 @@ class CodeMotionAnalysisVisitor final : public VNVisitorConst { } public: - // Analyse the statement list starting at nodep, filling in stmtProperties. + // Analyze the statement list starting at nodep, filling in stmtProperties. static void analyze(AstNode* nodep, StmtPropertiesAllocator& stmtProperties) { CodeMotionAnalysisVisitor{nodep, stmtProperties}; } @@ -475,7 +475,7 @@ private: AstNode* currp = m_workQueuep->front(); m_workQueuep->pop(); - // Analyse sub-tree list for code motion and conditional merging + // Analyze sub-tree list for code motion and conditional merging CodeMotionAnalysisVisitor::analyze(currp, stmtProperties); // Perform the code motion within the whole sub-tree list if (v3Global.opt.fMergeCondMotion()) { diff --git a/src/V3Mutex.h b/src/V3Mutex.h index e08fed7c6..2aa024040 100644 --- a/src/V3Mutex.h +++ b/src/V3Mutex.h @@ -39,7 +39,7 @@ #define VL_LOCK_SPINS 50000 /// Number of times to spin for a mutex before yielding -// MutexConfig class that allows to configure how mutex and lockgurads behave +// MutexConfig class that allows to configure how mutex and lockguards behave // once configured and locked, it cannot be changed. Configuration and lock needs to be // done before starting any additional threads. class V3MutexConfig final { diff --git a/src/V3ProtectLib.h b/src/V3ProtectLib.h index 7c1361573..7f16b2780 100644 --- a/src/V3ProtectLib.h +++ b/src/V3ProtectLib.h @@ -1,6 +1,6 @@ // -*- mode: C++; c-file-style: "cc-mode" -*- //************************************************************************* -// DESCRIPTION: Verilator: Buitd DPI protected C++ and SV +// DESCRIPTION: Verilator: Build DPI protected C++ and SV // // Code available from: https://verilator.org // diff --git a/src/V3Randomize.cpp b/src/V3Randomize.cpp index 755e13fb4..5e8f20d10 100644 --- a/src/V3Randomize.cpp +++ b/src/V3Randomize.cpp @@ -198,7 +198,7 @@ private: AstBasicDType* const basicp = varp->dtypep()->skipRefp()->basicp(); UASSERT_OBJ(basicp, varp, "Unexpected randc variable dtype"); if (basicp->width() > 32) { - varp->v3error("Maxiumum implemented width for randc is 32 bits, " + varp->v3error("Maximum implemented width for randc is 32 bits, " << varp->prettyNameQ() << " is " << basicp->width() << " bits"); varp->isRandC(false); varp->isRand(true); diff --git a/src/V3String.h b/src/V3String.h index 149ce2d43..a941c3592 100644 --- a/src/V3String.h +++ b/src/V3String.h @@ -174,7 +174,7 @@ public: uint64_t digestUInt64(); // Return 64-bits of digest static void selfTest(); // Test this class - // Inerting hash data + // Inserting hash data void insert(const void* datap, size_t length); // Process data into the digest void insert(const string& data) { insert(data.data(), data.length()); diff --git a/src/V3ThreadPool.h b/src/V3ThreadPool.h index ccfa2f88c..c0d5fff88 100644 --- a/src/V3ThreadPool.h +++ b/src/V3ThreadPool.h @@ -117,7 +117,7 @@ class V3ThreadPool final { if (!m_mutex.try_lock()) { if (m_jobsInProgress != 0) { // ThreadPool shouldn't be destroyed when jobs are running and mutex is locked, - // something is wrong. Most likely Verilator is exitting as a result of failed + // something is wrong. Most likely Verilator is exiting as a result of failed // assert in critical section. Do nothing, let it exit. return; } @@ -169,7 +169,7 @@ public: bool waitIfStopRequested() VL_MT_SAFE VL_EXCLUDES(m_stoppedJobsMutex); // Waits for future. - // This function can be interupted by exclusive access request. + // This function can be interrupted by exclusive access request. // When other thread requested exclusive access to processing, // current thread is stopped and waits until it is resumed. // Returns future result @@ -177,7 +177,7 @@ public: static T waitForFuture(std::future& future) VL_MT_SAFE_EXCLUDES(m_mutex); // Waits for list of futures - // This function can be interupted by exclusive access request. + // This function can be interrupted by exclusive access request. // When other thread requested exclusive access to processing, // current thread is stopped and waits until it is resumed. // This function uses function overload instead of template diff --git a/src/V3ThreadSafety.h b/src/V3ThreadSafety.h index 61b75aa95..9a2a2a2d6 100644 --- a/src/V3ThreadSafety.h +++ b/src/V3ThreadSafety.h @@ -1,6 +1,6 @@ // -*- mode: C++; c-file-style: "cc-mode" -*- //************************************************************************* -// DESCRIPTION: Verilator: Definitions for thread safety checing +// DESCRIPTION: Verilator: Definitions for thread safety checking // // Code available from: https://verilator.org // diff --git a/src/V3TraceDecl.cpp b/src/V3TraceDecl.cpp index 17aa40860..ac9e1913d 100644 --- a/src/V3TraceDecl.cpp +++ b/src/V3TraceDecl.cpp @@ -259,7 +259,7 @@ private: const size_t pos = path.rfind('.'); const std::string name = path.substr(pos == string::npos ? 0 : pos + 1); - // Compute the type of the scope beign fixed up + // Compute the type of the scope being fixed up AstNodeModule* const modp = scopep->aboveCellp()->modp(); const VTracePrefixType scopeType = VN_IS(modp, Iface) ? VTracePrefixType::SCOPE_INTERFACE @@ -427,7 +427,7 @@ private: // Assume only references under the same parent scope reference // the same interface. - // TODO: This is not actually correct. An inteface can propagate + // TODO: This is not actually correct. An interface can propagate // upwards and sideways when passed to a port via a downward // hierarchical reference, which we will miss here. if (!VString::startsWith(refName, parentPath)) continue; diff --git a/src/V3Width.cpp b/src/V3Width.cpp index a9922e57c..d5442754d 100644 --- a/src/V3Width.cpp +++ b/src/V3Width.cpp @@ -4318,14 +4318,14 @@ private: return valuep; } - static void checkEventAssignement(const AstNodeAssign* const asgnp) { + static void checkEventAssignment(const AstNodeAssign* const asgnp) { string unsupEvtAsgn; if (!usesDynamicScheduler(asgnp->lhsp())) unsupEvtAsgn = "to"; if (asgnp->rhsp()->dtypep()->isEvent() && !usesDynamicScheduler(asgnp->rhsp())) { unsupEvtAsgn += (unsupEvtAsgn.empty() ? "from" : " and from"); } if (!unsupEvtAsgn.empty()) { - asgnp->v3warn(E_UNSUPPORTED, "Assignement " + asgnp->v3warn(E_UNSUPPORTED, "Assignment " << unsupEvtAsgn << " event in statically scheduled context.\n" << asgnp->warnMore() @@ -4811,7 +4811,7 @@ private: } if (nodep->hasDType() && nodep->dtypep()->isEvent()) { - checkEventAssignement(nodep); + checkEventAssignment(nodep); v3Global.setAssignsEvents(); } } diff --git a/src/Verilator.cpp b/src/Verilator.cpp index 2d23c0d5d..32f1108cb 100644 --- a/src/Verilator.cpp +++ b/src/Verilator.cpp @@ -690,7 +690,7 @@ static void verilate(const string& argString) { const V3MtDisabledLockGuard mtDisabler{v3MtDisabledLock()}; UASSERT(v3Global.opt.hierarchical(), "hierarchical must be set"); - UASSERT(!v3Global.opt.hierChild(), "This must not be a hierarhcical-child run"); + UASSERT(!v3Global.opt.hierChild(), "This must not be a hierarchical-child run"); UASSERT(v3Global.opt.hierBlocks().empty(), "hierarchical-block must not be set"); if (v3Global.opt.gmake()) { v3Global.hierPlanp()->writeCommandArgsFiles(false); diff --git a/src/astgen b/src/astgen index 0ace3f347..ae111ffbc 100755 --- a/src/astgen +++ b/src/astgen @@ -647,7 +647,7 @@ def read_types(filename, Nodes, prefix): op = node.getOp(n) if op is None: error(lineno, - "Alaised op" + str(n) + " is not defined") + "Aliased op" + str(n) + " is not defined") else: node.addOp(n, ident, *op[1:]) else: @@ -700,7 +700,7 @@ def check_types(sortedTypes, prefix, abstractPrefix): hasOrderingError = True pred = expect[node] print( - "{file}:{lineno}: %Error: Definition of '{p}{n}' is out of order. Shold be {where}." + "{file}:{lineno}: %Error: Definition of '{p}{n}' is out of order. Should be {where}." .format(file=file, lineno=node.lineno, p=prefix, @@ -806,7 +806,7 @@ def write_report(filename): ################################################################################ -# Common code genaration +# Common code generation ################################################################################ @@ -904,7 +904,7 @@ def write_type_tests(prefix, nodeList): ################################################################################ -# Ast code genaration +# Ast code generation ################################################################################ @@ -1032,7 +1032,7 @@ def write_ast_yystype(filename): ################################################################################ -# DFG code genaration +# DFG code generation ################################################################################ @@ -1086,7 +1086,7 @@ def write_dfg_auto_classes(filename): fh.write(textwrap.dedent(pattern).format(**fmt)) for node in DfgVertexList: - # Only generate code for automatically derieved leaf nodes + # Only generate code for automatically derived leaf nodes if (node.file is not None) or not node.isLeaf: continue @@ -1106,7 +1106,7 @@ def write_dfg_auto_classes(filename): def write_dfg_ast_to_dfg(filename): with open_file(filename) as fh: for node in DfgVertexList: - # Only generate code for automatically derieved leaf nodes + # Only generate code for automatically derived leaf nodes if (node.file is not None) or (not node.isLeaf): continue @@ -1144,7 +1144,7 @@ def write_dfg_ast_to_dfg(filename): def write_dfg_dfg_to_ast(filename): with open_file(filename) as fh: for node in DfgVertexList: - # Only generate code for automatically derieved leaf nodes + # Only generate code for automatically derived leaf nodes if (node.file is not None) or (not node.isLeaf): continue @@ -1259,7 +1259,7 @@ for node in AstNodeList: op = node.getOp(n) if op is not None: name, monad, kind = op - assert monad == "", "Cannot represnt AstNode as DfgVertex" + assert monad == "", "Cannot represent AstNode as DfgVertex" vertex.addOp(n, name, "", "") # Compute derived properties over the whole DfgVertex hierarchy diff --git a/src/verilog.y b/src/verilog.y index 3a274eba3..2f5d70a07 100644 --- a/src/verilog.y +++ b/src/verilog.y @@ -1,6 +1,6 @@ // -*- mode: C++; c-file-style: "cc-mode" -*- //************************************************************************* -// DESCRIPTION: Verilator: Bison grammer file +// DESCRIPTION: Verilator: Bison grammar file // // Code available from: https://verilator.org // @@ -1054,7 +1054,7 @@ BISONPRE_VERSION(3.7,%define api.header.include {"V3ParseBison.h"}) %token yP_SSRIGHTEQ ">>>=" // [* is not an operator, as "[ * ]" is legal -// [= and [-> could be repitition operators, but to match [* we don't add them. +// [= and [-> could be repetition operators, but to match [* we don't add them. // '( is not an operator, as "' (" is legal //******************** @@ -2189,7 +2189,7 @@ struct_union_memberList: // IEEE: { struct_union_member } ; struct_union_member: // ==IEEE: struct_union_member - // // UNSUP random_qualifer not propagagted until have randomize support + // // UNSUP random_qualifer not propagated until have randomize support random_qualifierE data_type_or_void /*mid*/ { GRAMMARP->m_memDTypep = $2; } // As a list follows, need to attach this dtype to each member. /*cont*/ list_of_member_decl_assignments ';' @@ -5988,7 +5988,7 @@ property_port_itemDirE: property_declarationBody: // IEEE: part of property_declaration //UNSUP assertion_variable_declarationList property_statement_spec {} - // // IEEE-2012: Incorectly hasyCOVER ySEQUENCE then property_spec here. + // // IEEE-2012: Incorrectly has yCOVER ySEQUENCE then property_spec here. // // Fixed in IEEE 1800-2017 property_spec { $$ = $1; } | property_spec ';' { $$ = $1; } @@ -6301,7 +6301,7 @@ cycle_delay_range: // IEEE: ==cycle_delay_range BBUNSUP($1, "Unsupported: ## () cycle delay range expression"); } // // In 1800-2009 ONLY: // // IEEE: yP_POUNDPOUND constant_primary - // // UNSUP: This causes a big grammer ambiguity + // // UNSUP: This causes a big grammar ambiguity // // as ()'s mismatch between primary and the following statement // // the sv-ac committee has been asked to clarify (Mantis 1901) | yP_POUNDPOUND anyrange @@ -6493,7 +6493,7 @@ trans_list: // ==IEEE: trans_list trans_set: // ==IEEE: trans_set trans_range_list { $$ = $1; } - // // Note the { => } in the grammer, this is really a list + // // Note the { => } in the grammar, this is really a list | trans_set yP_EQGT trans_range_list { $$ = $1; BBUNSUP($2, "Unsupported: cover trans set '=>'"); } ; @@ -6843,7 +6843,7 @@ checker_generate_item: // ==IEEE: checker_generate_item class_declaration: // ==IEEE: part of class_declaration // // IEEE-2012: using this also for interface_class_declaration - // // The classExtendsE rule relys on classFront having the + // // The classExtendsE rule relies on classFront having the // // new class scope correct via classFront classFront parameter_port_listE classExtendsE classImplementsE ';' /*mid*/ { // Allow resolving types declared in base extends class @@ -6881,7 +6881,7 @@ classVirtualE: ; classExtendsE: // IEEE: part of class_declaration - // // The classExtendsE rule relys on classFront having the + // // The classExtendsE rule relies on classFront having the // // new class scope correct via classFront /* empty */ { $$ = nullptr; $$ = nullptr; } | yEXTENDS classExtendsList { $$ = $2; $$ = $2; } diff --git a/test_regress/t/t_event_copy.out b/test_regress/t/t_event_copy.out index 8784c2883..81bba8753 100644 --- a/test_regress/t/t_event_copy.out +++ b/test_regress/t/t_event_copy.out @@ -1,17 +1,17 @@ -%Error-UNSUPPORTED: t/t_event_copy.v:100:13: Assignement to and from event in statically scheduled context. +%Error-UNSUPPORTED: t/t_event_copy.v:100:13: Assignment to and from event in statically scheduled context. : ... note: In instance 't' : Static event scheduling won't be able to handle this. : ... Suggest move the event into a completely dynamic context, eg. a class, and reference it only from such context. 100 | e4 = e3; | ^ ... For error description see https://verilator.org/warn/UNSUPPORTED?v=latest -%Error-UNSUPPORTED: t/t_event_copy.v:101:13: Assignement to and from event in statically scheduled context. +%Error-UNSUPPORTED: t/t_event_copy.v:101:13: Assignment to and from event in statically scheduled context. : ... note: In instance 't' : Static event scheduling won't be able to handle this. : ... Suggest move the event into a completely dynamic context, eg. a class, and reference it only from such context. 101 | e3 = e2; | ^ -%Error-UNSUPPORTED: t/t_event_copy.v:128:13: Assignement to event in statically scheduled context. +%Error-UNSUPPORTED: t/t_event_copy.v:128:13: Assignment to event in statically scheduled context. : ... note: In instance 't' : Static event scheduling won't be able to handle this. : ... Suggest move the event into a completely dynamic context, eg. a class, and reference it only from such context. diff --git a/test_regress/t/t_randc_oversize_bad.out b/test_regress/t/t_randc_oversize_bad.out index 6eaf0eefe..93bcf0c1b 100644 --- a/test_regress/t/t_randc_oversize_bad.out +++ b/test_regress/t/t_randc_oversize_bad.out @@ -1,4 +1,4 @@ -%Error: t/t_randc_oversize_bad.v:8:21: Maxiumum implemented width for randc is 32 bits, 'i' is 38 bits +%Error: t/t_randc_oversize_bad.v:8:21: Maximum implemented width for randc is 32 bits, 'i' is 38 bits : ... note: In instance 't' 8 | randc bit [37:0] i; | ^