From 1d7cd873dff0ee54aa41434c8b001a5cd467dc3c Mon Sep 17 00:00:00 2001 From: nsfisis Date: Wed, 3 Sep 2025 20:40:18 +0900 Subject: feat: add --std=c23 --- Makefile | 4 ++-- src/cli.c | 2 ++ src/common.h | 4 ++++ src/std.h | 2 +- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 773f3d7..e9b1143 100644 --- a/Makefile +++ b/Makefile @@ -26,10 +26,10 @@ $(BUILD_DIR): # TODO: provide release build? $(BUILD_ROOT_DIR)/$(TARGET): $(OBJECTS) - $(CC) -Wall -MMD -g -O0 -o $@ $^ + $(CC) -Wall -MMD -g -O0 --std=c23 -o $@ $^ # TODO: provide release build? $(BUILD_DIR)/%.o: src/%.c - $(CC) -c -Wall -MMD -g -O0 -o $@ $< + $(CC) -c -Wall -MMD -g -O0 --std=c23 -o $@ $< -include $(BUILD_DIR)/*.d diff --git a/src/cli.c b/src/cli.c index bd0d915..c5649f0 100644 --- a/src/cli.c +++ b/src/cli.c @@ -39,6 +39,8 @@ CliArgs* parse_cli_args(int argc, char** argv) { } else if (strcmp(argv[i], "--version") == 0) { print_version(); exit(0); + } else if (strcmp(argv[i], "--std=c23") == 0) { + // ignore --std=c23 } else { fatal_error("unknown option: %s", argv[i]); } diff --git a/src/common.h b/src/common.h index 4bd4c17..332b61d 100644 --- a/src/common.h +++ b/src/common.h @@ -5,7 +5,11 @@ _Noreturn void fatal_error(const char* msg, ...); +// TODO +#ifdef __ducc__ #define unreachable() fatal_error("%s:%d: unreachable", __FILE__, __LINE__) +#endif + #define unimplemented() fatal_error("%s:%d: unimplemented", __FILE__, __LINE__) bool str_ends_with(const char* s, const char* suffix); diff --git a/src/std.h b/src/std.h index d584e1a..c2d7b26 100644 --- a/src/std.h +++ b/src/std.h @@ -16,7 +16,7 @@ int fclose(FILE*); int fprintf(FILE*, const char*, ...); char* fgets(char*, int, FILE*); FILE* fopen(const char*, const char*); -int getchar(void); +int getchar(); int isalnum(int); int isalpha(int); int isdigit(int); -- cgit v1.2.3-70-g09d2