From c2b5a959615e1368b0ef99757b29fe7d715f734f Mon Sep 17 00:00:00 2001 From: Dale Weiler Date: Mon, 15 Apr 2013 06:23:13 +0000 Subject: [PATCH] GCC specific stuff compile flags. --- Makefile | 4 ++-- ftepp.c | 1 + lexer.c | 12 ++++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/Makefile b/Makefile index 41ae2e6..20152c5 100644 --- a/Makefile +++ b/Makefile @@ -10,7 +10,7 @@ CYGWIN = $(findstring CYGWIN, $(UNAME)) MINGW = $(findstring MINGW32, $(UNAME)) CC ?= clang -CFLAGS += -Wall -Wextra -Werror -I. -fno-strict-aliasing -fsigned-char -ffunction-sections -fdata-sections -Wl,-gc-sections $(OPTIONAL) +CFLAGS += -Wall -Wextra -Werror -I. -fno-strict-aliasing -fsigned-char $(OPTIONAL) ifneq ($(shell git describe --always 2>/dev/null),) CFLAGS += -DGMQCC_GITINFO="\"$(shell git describe --always)\"" endif @@ -32,7 +32,7 @@ else #Tiny C Compiler doesn't know what -pedantic-errors is # and instead of ignoring .. just errors. ifneq ($(CC), tcc) - CFLAGS +=-pedantic-errors + CFLAGS +=-pedantic-errors -ffunction-sections -fdata-sections -Wl,-gc-sections else CFLAGS += -Wno-pointer-sign -fno-common endif diff --git a/ftepp.c b/ftepp.c index af3e699..87be738 100644 --- a/ftepp.c +++ b/ftepp.c @@ -394,6 +394,7 @@ static bool ftepp_define_params(ftepp_t *ftepp, ppmacro *macro) return false; } } while (ftepp->token == ','); + if (ftepp->token != ')') { ftepp_error(ftepp, "expected closing paren after macro parameter list"); return false; diff --git a/lexer.c b/lexer.c index 8d6f094..6f9def8 100644 --- a/lexer.c +++ b/lexer.c @@ -495,13 +495,13 @@ unroll: vec_free(command); lex_ungetch(lex, ' '); } - if (command) { - vec_pop(command); - while (vec_size(command)) { - lex_ungetch(lex, (unsigned char)vec_last(command)); - vec_pop(command); + if (param) { + vec_pop(param); + while (vec_size(param)) { + lex_ungetch(lex, (unsigned char)vec_last(param)); + vec_pop(param); } - vec_free(command); + vec_free(param); lex_ungetch(lex, ' '); } if (pragma) { -- 2.39.2