From 5d2d54ae0ebad9b7e2314735ba89b8e09b4ab147 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Sat, 17 Feb 2024 14:47:14 -0500 Subject: Tweak cord formatting --- compile.c | 4 ++-- nextlang.h | 10 +++++----- util.c | 2 +- util.h | 2 +- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/compile.c b/compile.c index e23c894c..3cdd39d2 100644 --- a/compile.c +++ b/compile.c @@ -318,7 +318,7 @@ CORD compile(env_t *env, ast_t *ast) CORD_appendf(&cord_func, "\treturn use_color ? \"\\x1b[0;1m%s\\x1b[m(\\x1b[2m...\\x1b[m)\" : \"%s(...)\";\n}", def->name, def->name); } else { - CORD_appendf(&cord_func, "\treturn CORD_asprintf(use_color ? \"\\x1b[0;1m%s\\x1b[m(", def->name); + CORD_appendf(&cord_func, "\treturn StrF(use_color ? \"\\x1b[0;1m%s\\x1b[m(", def->name); for (arg_ast_t *field = def->fields; field; field = field->next) { CORD_appendf(&cord_func, "%s=\\x1b[35m%%r\\x1b[m", field->name); if (field->next) cord_func = CORD_cat(cord_func, ", "); @@ -379,7 +379,7 @@ CORD compile(env_t *env, ast_t *ast) for (ast_list_t *target = assign->targets; target; target = target->next) CORD_appendf(&code, "%r = $%ld;\n", compile(env, target->ast), i++); - CORD expr_cord = "CORD_asprintf(\""; + CORD expr_cord = "StrF(\""; for (ast_list_t *target = assign->targets; target; target = target->next) expr_cord = CORD_cat(expr_cord, target->next ? "%r, " : "%r"); expr_cord = CORD_cat(expr_cord, "\""); diff --git a/nextlang.h b/nextlang.h index c02760de..30a8aecc 100644 --- a/nextlang.h +++ b/nextlang.h @@ -40,13 +40,13 @@ CORD as_cord(void *x, bool use_color, const char *fmt, ...); -#define CORD_asprintf(...) ({ CORD $c; CORD_sprintf(&$c, __VA_ARGS__); $c; }) +#define StrF(...) ({ CORD $c; CORD_sprintf(&$c, __VA_ARGS__); $c; }) #define $var(var, val) __typeof(val) var = val #define $cord(x) _Generic(x, bool: x ? "yes" : "no", \ - int8_t: CORD_asprintf("%d", x), \ - int16_t: CORD_asprintf("%d", x), \ - int32_t: CORD_asprintf("%d", x), int64_t: CORD_asprintf("%ld", x), \ - double: CORD_asprintf("%g", x), float: CORD_asprintf("%g", x), \ + int8_t: StrF("%d", x), \ + int16_t: StrF("%d", x), \ + int32_t: StrF("%d", x), int64_t: StrF("%ld", x), \ + double: StrF("%g", x), float: StrF("%g", x), \ CORD: x, \ array_t: as_cord($stack(x), false, "[ ]"), \ default: "???") diff --git a/util.c b/util.c index 4ee5ef7a..16ef7aaf 100644 --- a/util.c +++ b/util.c @@ -70,7 +70,7 @@ public char *mangle(const char *name) return mangled; } -CORD CORD_asprintf(const char *fmt, ...) +CORD CORD_asprintf(CORD fmt, ...) { va_list args; va_start(args, fmt); diff --git a/util.h b/util.h index 34acb8ff..1df56ce5 100644 --- a/util.h +++ b/util.h @@ -25,7 +25,7 @@ char *heap_strn(const char *str, size_t len); char *heap_str(const char *str); char *heap_strf(const char *fmt, ...); -CORD CORD_asprintf(const char *fmt, ...); +CORD CORD_asprintf(CORD fmt, ...); #define CORD_appendf(cord, fmt, ...) CORD_sprintf(cord, "%r" fmt, *(cord) __VA_OPT__(,) __VA_ARGS__) #define asprintfa(...) ({ char *_buf = alloca(snprintf(0, 0, __VA_ARGS__)); sprintf(_buf, __VA_ARGS__); _buf; }) -- cgit v1.2.3