From 922c1bc4b4c3e9f4c610521648588be816beb433 Mon Sep 17 00:00:00 2001 From: josh Date: Fri, 15 Jan 2010 17:54:35 +0000 Subject: [PATCH] fixed segfault git-svn-id: svn://anubis/jtlc/trunk@24 f5bc74b8-7b62-4e90-9214-7121d538519f --- parser/parser.yy | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/parser/parser.yy b/parser/parser.yy index 5973127..c8a57bd 100644 --- a/parser/parser.yy +++ b/parser/parser.yy @@ -99,7 +99,9 @@ program: program_items { } ; -program_items: /* empty */ +program_items: /* empty */ { + $$ = new ItemsNode(); + } | program_item program_items { $$ = new ItemsNode(); $$->addChild($1); @@ -138,7 +140,9 @@ function: IDENTIFIER LPAREN parameter_list RPAREN COLON type LCURLY function_ite } ; -function_items: /* empty */ +function_items: /* empty */ { + $$ = new ItemsNode(); + } | statement function_items { $$ = new ItemsNode(); $$->addChild($1); @@ -146,7 +150,9 @@ function_items: /* empty */ } ; -parameter_list: /* empty */ +parameter_list: /* empty */ { + $$ = new ItemsNode(); + } | variable_spec parameter_list_more { $$ = new ItemsNode(); $$->addChild($1); @@ -154,7 +160,9 @@ parameter_list: /* empty */ } ; -parameter_list_more: /* empty */ +parameter_list_more: /* empty */ { + $$ = new ItemsNode(); + } | COMMA variable_spec parameter_list_more { $$ = new ItemsNode(); $$->addChild($2); @@ -200,7 +208,9 @@ struct_type: STRUCT LCURLY struct_items RCURLY { } ; -struct_items: /* empty */ +struct_items: /* empty */ { + $$ = new ItemsNode(); + } | struct_item struct_items { $$ = new ItemsNode(); $$->addChild($1);