diff --git a/Makefile.in b/Makefile.in index fa1796705..7ff804088 100644 --- a/Makefile.in +++ b/Makefile.in @@ -239,7 +239,7 @@ lexor.cc: $(srcdir)/lexor.lex lexor_keyword.o: lexor_keyword.cc parse.h lexor_keyword.cc: $(srcdir)/lexor_keyword.gperf - gperf -o -i 7 -C -k 1-4,$$ -L ANSI-C -H keyword_hash -N check_identifier -t $(srcdir)/lexor_keyword.gperf > lexor_keyword.cc || (rm -f lexor_keyword.cc ; false) + gperf -o -i 7 -C -k 1-4,$$ -H keyword_hash -N check_identifier -t $(srcdir)/lexor_keyword.gperf > lexor_keyword.cc || (rm -f lexor_keyword.cc ; false) iverilog-vpi.man: $(srcdir)/iverilog-vpi.man.in version.exe ./version.exe `head -1 $(srcdir)/iverilog-vpi.man.in`'\n' > $@ diff --git a/autoconf.sh b/autoconf.sh index 2b5c3f319..b22527391 100644 --- a/autoconf.sh +++ b/autoconf.sh @@ -10,4 +10,4 @@ echo "Autoconf in root..." autoconf -f echo "Precompiling lexor_keyword.gperf" -gperf -o -i 7 -C -k 1-4,\$ -L ANSI-C -H keyword_hash -N check_identifier -t ./lexor_keyword.gperf > lexor_keyword.cc +gperf -o -i 7 -C -k 1-4,\$ -H keyword_hash -N check_identifier -t ./lexor_keyword.gperf > lexor_keyword.cc diff --git a/lexor_keyword.gperf b/lexor_keyword.gperf index 83681aba3..a37513c4b 100644 --- a/lexor_keyword.gperf +++ b/lexor_keyword.gperf @@ -1,5 +1,8 @@ +%language=C++ +%define class-name Lkwd + %{ -/* Command-line: gperf -o -i 1 -C -k 1-3,$ -L C -H keyword_hash -N check_identifier -tT lexor_keyword.gperf */ +/* Command-line: gperf -o -i 7 -C -k 1-4,$ -H keyword_hash -N check_identifier -t lexor_keyword.gperf */ #include "config.h" #include "parse_misc.h" @@ -194,7 +197,7 @@ int lexor_keyword_mask = 0; int lexor_keyword_code(const char*str, unsigned nstr) { - const struct lexor_keyword*rc = check_identifier(str, nstr); + const struct lexor_keyword*rc = Lkwd::check_identifier(str, nstr); if (rc == 0) return IDENTIFIER; else if ((rc->mask & lexor_keyword_mask) == 0)