diff options
author | Dave Beckett <dave@dajobe.org> | 2017-01-08 13:25:46 -0800 |
---|---|---|
committer | Dave Beckett <dave@dajobe.org> | 2017-01-08 13:25:46 -0800 |
commit | f7064a52602b29885d8d803ba2d3c12eeea93c6f (patch) | |
tree | 1a3b3ac0807ea99a6d24718265ae86b8b29ccb7b | |
parent | 95caa9e92259872945f3e4b7435e261dfb4fba1c (diff) | |
download | raptor-f7064a52602b29885d8d803ba2d3c12eeea93c6f.tar.gz |
Fixes for newer flex
Testing with flex 2.6.3
-rwxr-xr-x | scripts/fix-flex.pl | 10 | ||||
-rw-r--r-- | src/turtle_parser.y | 1 |
2 files changed, 9 insertions, 2 deletions
diff --git a/scripts/fix-flex.pl b/scripts/fix-flex.pl index df5d57ce..dcb38c27 100755 --- a/scripts/fix-flex.pl +++ b/scripts/fix-flex.pl @@ -40,12 +40,12 @@ while(<>) { # Remove generated yy_fatal_error declaration and definition to avoid warnings about unused/non-defined static function # declaration - if(/^static void yy_fatal_error\s*\(.*\)\s*\;\s*$/) { + if(/^static void( yynoreturn)? yy_fatal_error\s*\(.*\)\s*\;\s*$/) { $line_offset--; # skipped 1 line next; } # definition - if(/^static void yy_fatal_error\s*\(.*\)\s*[^\;]\s*$/) { + if(/^static void( yynoreturn)? yy_fatal_error\s*\(.*\)\s*[^\;]\s*$/) { do { $_=<>; $line_offset--; # skipped 1 line @@ -113,6 +113,12 @@ EOT } } + # Fix ${prefix}_scan_bytes to take a yy_size_t len arg, not int. + # declaration + s/${prefix}_scan_bytes\s+\( const char \*bytes, int len , yyscan_t yyscanner \);/${prefix}_scan_bytes \( const char \*bytes, yy_size_t len , yyscan_t yyscanner \);/; + # definition + s/^YY_BUFFER_STATE ${prefix}_scan_bytes\s+\(const char \* yybytes, int _yybytes_len , yyscan_t yyscanner\)/YY_BUFFER_STATE ${prefix}_scan_bytes \(const char \* yybytes, yy_size_t _yybytes_len , yyscan_t yyscanner\)/; + if($cur_function eq $prefix."_switch_to_buffer" || $cur_function eq $prefix."restart" || $cur_function eq $prefix."push_buffer_state") { diff --git a/src/turtle_parser.y b/src/turtle_parser.y index 67b9c5b3..ed9e4b9e 100644 --- a/src/turtle_parser.y +++ b/src/turtle_parser.y @@ -50,6 +50,7 @@ #include <turtle_parser.h> #define YY_NO_UNISTD_H 1 +#undef yylex #include <turtle_lexer.h> #include <turtle_common.h> |