From 5bcdee9f0702e4f54897166250898475f0d26ca3 Mon Sep 17 00:00:00 2001 From: lemon Date: Wed, 10 Sep 2025 20:15:56 +0200 Subject: lex: stringify args in function macros --- io.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'io.c') diff --git a/io.c b/io.c index 9b1720b..c8e338f 100644 --- a/io.c +++ b/io.c @@ -475,9 +475,16 @@ vbfmt(struct wbuf *out, const char *fmt, va_list ap) case TKSTRLIT: n += bfmt(buf, "%'S", tok->s, tok->len); break; - case TKIDENT: + case TKPPMACSTR: + if (quote) n += bputc(buf, '`'); + n += bfmt(buf, "#%s", tok->s); + if (quote) n += bputc(buf, '\''); + break; case TKPPMACARG: - n += bfmt(buf, "`%s'", tok->s); + case TKIDENT: + if (quote) n += bputc(buf, '`'); + n += bfmt(buf, "%s", tok->s); + if (quote) n += bputc(buf, '\''); break; case TKEOF: n += bwriteS(buf, ""); -- cgit v1.2.3