Apply 'make format'
This commit is contained in:
parent
22e566a1c0
commit
8f99f3e0bc
|
|
@ -305,7 +305,9 @@ class BeginVisitor final : public VNVisitor {
|
|||
= m_ftaskp->name() + "__Vstatic__" + dot(m_unnamedScope, nodep->name());
|
||||
if (nodep->isIO()) {
|
||||
if (nodep->direction().isRef()) {
|
||||
nodep->v3error("It is illegal to use argument passing by reference for subroutines with a lifetime of static (IEEE 1800-2023 13.5.2)");
|
||||
nodep->v3error(
|
||||
"It is illegal to use argument passing by reference for subroutines with "
|
||||
"a lifetime of static (IEEE 1800-2023 13.5.2)");
|
||||
}
|
||||
// Create a port that is used for passing value between argument and static
|
||||
// variable
|
||||
|
|
|
|||
|
|
@ -443,10 +443,11 @@ class DynScopeVisitor final : public VNVisitor {
|
|||
if (!isEvent && m_afterTimingControl && nodep->varp()->isWritable()
|
||||
&& nodep->access().isWriteOrRW()) {
|
||||
// The output variable may not exist after a delay, so we can't just write to it
|
||||
nodep->v3error("Writing to an " << nodep->varp()->verilogKwd()
|
||||
<< " automatic variable of a "
|
||||
<< (m_inFunc ? "function" : "task")
|
||||
<< " after a timing control is not allowed (IEEE 1800-2023 13.2.2)");
|
||||
nodep->v3error(
|
||||
"Writing to an "
|
||||
<< nodep->varp()->verilogKwd() << " automatic variable of a "
|
||||
<< (m_inFunc ? "function" : "task")
|
||||
<< " after a timing control is not allowed (IEEE 1800-2023 13.2.2)");
|
||||
}
|
||||
if (!framep->instance().initialized()) framep->createInstancePrototype();
|
||||
framep->captureVarInsert(nodep->varp());
|
||||
|
|
|
|||
|
|
@ -389,7 +389,8 @@ class LinkParseVisitor final : public VNVisitor {
|
|||
// Variables in static tasks with timing control can be used after the task has ended
|
||||
// with use of join..fork_none, so they need to be static
|
||||
if (m_ftaskp->lifetime().isStatic() && m_hasTimingControl) {
|
||||
nodep->v3warn(IMPLICITSTATIC, "Variable's lifetime implicitly set to static because in static task with timing control.");
|
||||
nodep->v3warn(IMPLICITSTATIC, "Variable's lifetime implicitly set to static "
|
||||
"because in static task with timing control.");
|
||||
nodep->lifetime(VLifetime::STATIC_IMPLICIT);
|
||||
} else {
|
||||
nodep->lifetime(VLifetime::AUTOMATIC_IMPLICIT);
|
||||
|
|
|
|||
|
|
@ -17,8 +17,8 @@ if re.search(r'clang', test.cxx_version):
|
|||
test.skip("uvm_regex.cc from upstream has clang warnings")
|
||||
|
||||
test.compile(verilator_flags2=[
|
||||
"--binary", "-Wno-IMPLICITSTATIC", test.build_jobs, "--vpi", "+define+T_V2017_1_0", "+incdir+t/uvm/v2017_1_0",
|
||||
test.pli_filename
|
||||
"--binary", "-Wno-IMPLICITSTATIC", test.build_jobs, "--vpi", "+define+T_V2017_1_0",
|
||||
"+incdir+t/uvm/v2017_1_0", test.pli_filename
|
||||
])
|
||||
|
||||
test.execute(expect_filename=test.golden_filename)
|
||||
|
|
|
|||
|
|
@ -17,8 +17,8 @@ if re.search(r'clang', test.cxx_version):
|
|||
test.skip("uvm_regex.cc from upstream has clang warnings")
|
||||
|
||||
test.compile(verilator_flags2=[
|
||||
"--binary", test.build_jobs, "--vpi", "+define+T_V2020_3_1", "+incdir+t/uvm/v2020_3_1", "-Wno-IMPLICITSTATIC",
|
||||
test.pli_filename
|
||||
"--binary", test.build_jobs, "--vpi", "+define+T_V2020_3_1", "+incdir+t/uvm/v2020_3_1",
|
||||
"-Wno-IMPLICITSTATIC", test.pli_filename
|
||||
])
|
||||
|
||||
test.execute(expect_filename=test.golden_filename)
|
||||
|
|
|
|||
Loading…
Reference in New Issue