summaryrefslogtreecommitdiffstats
path: root/src/main.c
diff options
context:
space:
mode:
authorTing-Wei Lan <lantw44@gmail.com>2016-01-02 12:10:26 +0800
committerTing-Wei Lan <lantw44@gmail.com>2016-01-02 14:01:30 +0800
commit33315d6d218bba888e3832ae5237f31a7aa39078 (patch)
tree965eaa0efe622f6e7f2168ffcf281f29f89eb7b3 /src/main.c
parent11a1e0ab1d2abb7e66030cab5ad976dd9557ca0a (diff)
downloadcompiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar.gz
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar.bz2
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar.lz
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar.xz
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.tar.zst
compiler2015-33315d6d218bba888e3832ae5237f31a7aa39078.zip
Suppress a bogus array bound warning for clang and glibc
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/main.c b/src/main.c
index 0ae48e4..a419b8b 100644
--- a/src/main.c
+++ b/src/main.c
@@ -38,9 +38,17 @@ int main (int argc, char **argv)
exit(1);
}
+// Workaround a clang bug: https://llvm.org/bugs/show_bug.cgi?id=20144
+#ifdef __clang__
+# pragma clang diagnostic push
+# pragma clang diagnostic ignored "-Warray-bounds"
+#endif
const char *source_name = argv[1];
FILE *source_handle =
strcmp(source_name, "-") == 0 ? stdin : fopen(source_name, "r");
+#ifdef __clang__
+# pragma clang diagnostic pop
+#endif
if (source_handle == NULL) {
fprintf(stderr, "%s: %s: %s\n", prog_name, source_name, ERR_MSG);
exit(1);