There are now no conflicts. Yay!!
Signed-off-by: NeilBrown <neil@brown.name>
###### output: type_err_const1
.tmp.code:3:12: Syntax error in constant: :
###### output: type_err_const1
.tmp.code:3:12: Syntax error in constant: :
- .tmp.code:4:8: Syntax error in constant: bar
+ .tmp.code:4:12: Syntax error in constant: :
## Test erroneous command line args
## Test erroneous command line args
+ | DeclareStruct NEWLINE
Close -> }
| NEWLINE Close
$*fieldlist
Close -> }
| NEWLINE Close
$*fieldlist
- FieldBlock -> Open FieldList Close ${ $0 = $<2; }$
+ FieldBlock -> Open FieldList } ${ $0 = $<2; }$
| Open SimpleFieldList } ${ $0 = $<2; }$
| Open SimpleFieldList } ${ $0 = $<2; }$
- | : FieldList ${ $0 = $<2; }$
+ | : FieldList $$NEWLINE ${ $0 = $<2; }$
- FieldList -> SimpleFieldList NEWLINE ${ $0 = $<1; }$
- | FieldList SimpleFieldList NEWLINE ${
+ FieldList -> SimpleFieldListLine ${ $0 = $<1; }$
+ | FieldList SimpleFieldListLine ${
$2->prev = $<1;
$0 = $<2;
}$
$2->prev = $<1;
$0 = $<2;
}$
+ SimpleFieldListLine -> SimpleFieldList NEWLINE ${ $0 = $<1; }$
+ | SimpleFieldListLine NEWLINE ${ $0 = $<1; }$
+
SimpleFieldList -> Field ${ $0 = $<1; }$
| SimpleFieldList ; Field ${
$3->prev = $<1;
SimpleFieldList -> Field ${ $0 = $<1; }$
| SimpleFieldList ; Field ${
$3->prev = $<1;
$void
Ocean -> DeclarationList
$void
Ocean -> DeclarationList
DeclarationList -> Declaration
| DeclarationList Declaration
DeclarationList -> Declaration
| DeclarationList Declaration
- Declaration -> DeclareConstant
+ Declaration -> Declaration NEWLINE
+ | DeclareConstant
| DeclareProgram
| DeclareStruct
| DeclareProgram
| DeclareStruct
| ERROR NEWLINE ${
tok_err(c,
"error: unhandled parse error", &$1);
| ERROR NEWLINE ${
tok_err(c,
"error: unhandled parse error", &$1);
DeclareConstant -> const Open ConstList Close
| const Open SimpleConstList }
DeclareConstant -> const Open ConstList Close
| const Open SimpleConstList }
+ | const : ConstList $$NEWLINE
| const SimpleConstList NEWLINE
| const SimpleConstList NEWLINE
- ConstList -> ComplexConsts
+ ConstList -> ConstLines
- ComplexConsts -> ComplexConst ComplexConsts
- | ComplexConst
- ComplexConst -> SimpleConstList NEWLINE
+ ConstLines -> ConstLines SimpleConstLine
+ | SimpleConstLine
SimpleConstList -> SimpleConstList ; Const
| Const
| SimpleConstList ;
SimpleConstList -> SimpleConstList ; Const
| Const
| SimpleConstList ;
+ SimpleConstLine -> SimpleConstList NEWLINE
+ | SimpleConstLine NEWLINE
+ | ERROR NEWLINE ${ tok_err(c, "Syntax error in constant", &$1); }$
$*type
CType -> Type ${ $0 = $<1; }$
$*type
CType -> Type ${ $0 = $<1; }$
v->val = interp_exec($5);
}
} }$
v->val = interp_exec($5);
}
} }$
- | ERROR NEWLINE ${ tok_err(c, "Syntax error in constant", &$1); }$
###### print const decls
{
###### print const decls
{