From aaaac6d887ee5c8d8b1c0c249b6b0e171e85ee45 Mon Sep 17 00:00:00 2001 From: Josh Holtrop Date: Wed, 18 Feb 2009 01:35:09 +0000 Subject: [PATCH] added location directives to flex and bison sources git-svn-id: svn://anubis/fart/trunk@127 7f9b0f55-74a9-4bce-be96-3c2cd072584d --- parser/parser.lex | 5 +++-- parser/parser.yy | 6 +++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/parser/parser.lex b/parser/parser.lex index 26b87eb..04b5295 100644 --- a/parser/parser.lex +++ b/parser/parser.lex @@ -1,5 +1,6 @@ %option nounput +%option bison-locations %{ @@ -35,8 +36,8 @@ \< return LESS; \> return GREATER; --?[0-9]+ yylval = new IntegerNode(atoi(yytext)); return DEC_NUMBER; --?[0-9]*\.[0-9]+ yylval = new NumberNode(atof(yytext)); return REAL_NUMBER; +-?[0-9]+ *yylval = new IntegerNode(atoi(yytext)); return DEC_NUMBER; +-?[0-9]*\.[0-9]+ *yylval = new NumberNode(atof(yytext)); return REAL_NUMBER; ambient return AMBIENT; box return BOX; diff --git a/parser/parser.yy b/parser/parser.yy index f6aec75..4656c28 100644 --- a/parser/parser.yy +++ b/parser/parser.yy @@ -7,9 +7,10 @@ #include "util/refptr.h" #include "nodes.h" #include "parser.h" +#include "parser.tab.hh" /* bison-generated header with YY[SL]TYPE */ using namespace std; -int yylex(void); +int yylex(YYSTYPE *, YYLTYPE *); extern FILE * yyin; @@ -27,6 +28,9 @@ static refptr parsed_scene_node; %} +%pure-parser +%locations + %token PLUS; %token MINUS; %token STAR;