Support printing enum names for %p and %s (#5523) (#7338 repair) (#7521) (#7527)

This commit is contained in:
Nick Brereton
2026-06-03 14:55:00 -04:00
committed by GitHub
parent 41811d436f
commit bbd8d927ee
11 changed files with 381 additions and 22 deletions
+1 -1
View File
@@ -344,7 +344,7 @@ void EmitCFunc::displayNode(AstNode* nodep, AstSFormatF* fmtp, // fmtp is nullp
AstNode* const subargp = fargp ? fargp->exprp() : argp;
const VFormatAttr formatAttr = AstSFormatArg::formatAttrDefauled(fargp, subargp->dtypep());
puts(", '"s + formatAttr.ascii() + '\'');
if (formatAttr.isSigned() || formatAttr.isUnsigned())
if (formatAttr.isSigned() || formatAttr.isUnsigned() || formatAttr.isEnum())
puts("," + cvtToStr(subargp->widthMin()));
const bool addrof = isScan || formatAttr.isString() || formatAttr.isComplex();
puts(",");