diff --git a/src/V3EmitCImp.cpp b/src/V3EmitCImp.cpp index 55cc93ad0..c6b213240 100644 --- a/src/V3EmitCImp.cpp +++ b/src/V3EmitCImp.cpp @@ -253,7 +253,7 @@ class EmitCImp final : public EmitCFunc { } else { putns(modp, "void " + modName + "::dtor() {\n"); } - putns(modp, "VL_DO_DANGLING(free(const_cast(vlNamep)), vlNamep);\n"); + putns(modp, "VL_DO_DANGLING(std::free(const_cast(vlNamep)), vlNamep);\n"); emitSystemCSection(modp, VSystemCSectionType::DTOR); puts("}\n"); } diff --git a/test_regress/t/t_var_rsvd_port.v b/test_regress/t/t_var_rsvd_port.v index 5d00596fe..a9d81abe0 100644 --- a/test_regress/t/t_var_rsvd_port.v +++ b/test_regress/t/t_var_rsvd_port.v @@ -13,6 +13,7 @@ module t (/*AUTOARG*/ reg vector; // OK, as not public reg switch /*verilator public*/; // Bad + reg free /*verilator public*/; // OK, not actually a keyword initial begin $write("*-* All Finished *-*\n");