summaryrefslogtreecommitdiff
path: root/tools/d2c/format
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2018-04-02 11:58:42 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2018-04-02 12:39:30 (GMT)
commit1db4ef323b7a76093356ae76268132f3760e1631 (patch)
treefec36ee0ec1b6b2010b62ca4177edca0e31e2114 /tools/d2c/format
parent1bc80837dde03a32b5ab185067f7bd4c499a9850 (diff)
Rewritten the whole instruction definition format.
Diffstat (limited to 'tools/d2c/format')
-rw-r--r--tools/d2c/format/Makefile.am3
-rw-r--r--tools/d2c/format/tokens.l8
2 files changed, 11 insertions, 0 deletions
diff --git a/tools/d2c/format/Makefile.am b/tools/d2c/format/Makefile.am
index c40b38e..8061804 100644
--- a/tools/d2c/format/Makefile.am
+++ b/tools/d2c/format/Makefile.am
@@ -26,6 +26,9 @@ libd2cformat_la_SOURCES = \
tokens.l \
grammar.y
+# _GNU_SOURCE : asprintf
+libd2cformat_la_CFLAGS = -D_GNU_SOURCE
+
# Automake fait les choses à moitié
CLEANFILES = grammar.h grammar.c grammar.output tokens.c tokens.h
diff --git a/tools/d2c/format/tokens.l b/tools/d2c/format/tokens.l
index 9dd9301..5db4afa 100644
--- a/tools/d2c/format/tokens.l
+++ b/tools/d2c/format/tokens.l
@@ -21,4 +21,12 @@
[A-Za-z0-9_]* { yylvalp->string = strdup(yytext); return OPS_TYPE; }
"|" { return OR; }
+. {
+ char *msg;
+ asprintf(&msg, "Unhandled token in d2c format block: '%s'", yytext);
+ YY_FATAL_ERROR(msg);
+ free(msg);
+ }
+
+
%%