From 4fb15555f514c5a20245b4640fe22a8bc3010f2d Mon Sep 17 00:00:00 2001 From: Jordan Date: Sat, 7 Jan 2017 16:04:43 -0800 Subject: [PATCH] added pstate/cstate, switched lexer_init with scanner_iniT --- src/apc.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/src/apc.c b/src/apc.c index 3b5774f..9f267ac 100644 --- a/src/apc.c +++ b/src/apc.c @@ -24,18 +24,28 @@ #define DEFAULT_PAGESIZE 4096 const char* cargs['Z'] = {0}; const long sys_pagesize; +yypstate* apc_pstate; +yycstate* apc_cstate; int main(int, char*[]); + extern //bison int yyparse(void); extern //lexer.c int lexer_init(void); +extern +int scanner_init(void); +extern +int scanner(yypstate*, yycstate*); extern //ir.c int ir_init(void); extern //apc/parser.tab.c YYSTYPE yylval; +extern +yycstate* yycstate_new(void); + extern //lexer.c int lexer(void); @@ -80,11 +90,16 @@ int main } if ((sys_pagesize = sysconf(_SC_PAGESIZE)) == 0) sys_pagesize = DEFAULT_PAGESIZE; - if (lexer_init() || ir_init()) + + apc_pstate = yypstate_new(); + apc_cstate = yycstate_new(); + + if (scanner_init() || ir_init()) { perror("init"); exit(EXIT_FAILURE); } - yyparse(); + scanner(); + exit(EXIT_SUCCESS); } -- 2.18.0