From: Jeremy Kerr Date: Tue, 17 Sep 2013 06:38:42 +0000 (+0800) Subject: discover/grub2: Allow EOF as a statement terminator X-Git-Tag: v1.0.0~445 X-Git-Url: http://git.ozlabs.org/?p=petitboot;a=commitdiff_plain;h=1a9af828d9ad0da0efa7af286db78c8904344e6b;hp=d1052291224febe931fc95ed53d5008f66a72b96 discover/grub2: Allow EOF as a statement terminator Files may not have a trailing newline. Signed-off-by: Jeremy Kerr --- diff --git a/discover/grub2/parser.y b/discover/grub2/parser.y index 3a5a142..292ce07 100644 --- a/discover/grub2/parser.y +++ b/discover/grub2/parser.y @@ -60,6 +60,7 @@ static void yyerror(struct grub2_parser *, char const *s); %token TOKEN_EOL %token TOKEN_DELIM %token TOKEN_WORD +%token TOKEN_EOF 0 %start script %debug @@ -70,10 +71,12 @@ script: statements { parser->script->statements = $1; } +eol: TOKEN_EOL | TOKEN_EOF; + statements: /* empty */ { $$ = create_statements(parser); } - | statements statement TOKEN_EOL { + | statements statement eol { statement_append($1, $2); $$ = $1; }