diff --git a/include/verilated.h b/include/verilated.h index 471624de7..ab63cf48e 100644 --- a/include/verilated.h +++ b/include/verilated.h @@ -405,6 +405,7 @@ extern const char* vl_mc_scan_plusargs(const char* prefixp); // PLIish #define VL_BITISSETLIMIT_W(data,width,bit) (((bit)<(width)) && data[VL_BITWORD_I(bit)] & (VL_UL(1)<>VL_WORDSIZE); } #define VL_SET_WI(owp,data) { owp[0]=(IData)(data); owp[1]=0; } #define VL_SET_QW(lwp) ( ((QData)(lwp[0])) | ((QData)(lwp[1])<<((QData)(VL_WORDSIZE)) )) @@ -524,7 +525,7 @@ static inline WDataOutP VL_ALLONES_W(int obits, WDataOutP owp) { // EMIT_RULE: VL_ASSIGN: oclean=rclean; obits==lbits; // For now, we always have a clean rhs. // Note: If a ASSIGN isn't clean, use VL_ASSIGNCLEAN instead to do the same thing. -static inline WDataOutP VL_ASSIGN_W(int obits, WDataOutP owp,WDataInP lwp){ +static inline WDataOutP VL_ASSIGN_W(int obits, WDataOutP owp, WDataInP lwp) { int words = VL_WORDS_I(obits); for (int i=0; i < words; ++i) owp[i] = lwp[i]; return(owp); diff --git a/include/verilated_heavy.h b/include/verilated_heavy.h index f1564c0c2..fba9eb0ee 100644 --- a/include/verilated_heavy.h +++ b/include/verilated_heavy.h @@ -68,7 +68,7 @@ extern void VL_SFORMAT_X(int obits_ignored, string &output, const char* formatp, extern string VL_SFORMATF_NX(const char* formatp, ...); extern IData VL_VALUEPLUSARGS_INW(int rbits, const string& ld, WDataOutP rdp); inline IData VL_VALUEPLUSARGS_INI(int rbits, const string& ld, IData& rdr) { - WData rwp[1]; + WData rwp[2]; // WData must always be at least 2 IData got = VL_VALUEPLUSARGS_INW(rbits,ld,rwp); if (got) rdr = rwp[0]; return got;