From f5df23b41f6cfa57ee677e4801353efdc0982dea Mon Sep 17 00:00:00 2001 From: Dirk Zimoch Date: Wed, 9 Feb 2022 10:57:48 +0100 Subject: [PATCH] allow muitiple preprocessor lines at beginning of file --- src/sequencer/snc.y | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/sequencer/snc.y b/src/sequencer/snc.y index 8656e594d..52619d1cb 100644 --- a/src/sequencer/snc.y +++ b/src/sequencer/snc.y @@ -109,8 +109,8 @@ extern int line_num; /* input file line no. */ state_program /* define a state program */ : program_name definitions state_set_list { program($3); } | program_name definitions state_set_list global_c { program($3); } -| pp_code program_name definitions state_set_list { program($4); } -| pp_code program_name definitions state_set_list global_c{ program($4); } +| pp_codes program_name definitions state_set_list { program($4); } +| pp_codes program_name definitions state_set_list global_c{ program($4); } | error { snc_err("state program"); } ; @@ -374,7 +374,14 @@ for_stmt pp_code /* pre-processor code (e.g. # 1 "test.st") */ : PP_SYMBOL NUMBER STRING CR { pp_code($2, $3, ""); } +| PP_SYMBOL NUMBER CR { pp_code($2, 0, ""); } | PP_SYMBOL NUMBER STRING NUMBER CR { pp_code($2, $3, $4); } +| PP_SYMBOL STRING CR { /* Silently consume #pragma lines */ } +; + +pp_codes /* one or more pp_code */ +: pp_code +| pp_codes pp_code ; global_c