diff --git a/include/verilated.cpp b/include/verilated.cpp index 32c6b64b5..349ee63cf 100644 --- a/include/verilated.cpp +++ b/include/verilated.cpp @@ -918,9 +918,9 @@ void _vl_vsformat(std::string& output, const std::string& format, va_list ap) VL } case 'p': { // 'x' but parameter is string const int lbits = va_arg(ap, int); - const char* const cstr = va_arg(ap, const char*); + const std::string* const cstr = va_arg(ap, const std::string*); std::ostringstream oss; - for (unsigned char c : std::string(cstr)) { + for (unsigned char c : *cstr) { oss << std::hex << static_cast(c); } std::string hex_str = oss.str();