diff --git a/build-aux/build.sh.in b/build-aux/build.sh.in index 305668a0..e1ad46ff 100644 --- a/build-aux/build.sh.in +++ b/build-aux/build.sh.in @@ -49,10 +49,11 @@ if test -n "$GUILE" -a "$GUILE" != true; then fi debug= -#debug=-g +debug=-g CFLAGS=" -static +-std=gnu99 $debug " diff --git a/module/mescc.scm b/module/mescc.scm index 36696d76..2bcf9d3c 100644 --- a/module/mescc.scm +++ b/module/mescc.scm @@ -143,10 +143,10 @@ General help using GNU software: "-nostartfiles" "-nostdinc" "-nostdlib" - "-static" - "-std")) + "-static")) (args (map (lambda (o) - (if (member o single-dash-options) (string-append "-" o) + (if (or (member o single-dash-options) + (string-prefix? "-std=" o)) (string-append "-" o) o)) args)) (args (append-map unclump-single args)) diff --git a/src/reader.c b/src/reader.c index c8ecea49..8304b1f3 100644 --- a/src/reader.c +++ b/src/reader.c @@ -106,6 +106,10 @@ reader_read_identifier_or_number (int c) } unreadchar (c); g_buf[i] = 0; +#if __arm__ // FIXME: workaround for mescc end of file bug + if (c == -1 && i == 1) + exit (0); +#endif return cstring_to_symbol (g_buf); }