diff --git a/assembler/src/gram.y b/assembler/src/gram.y index ae307f9e..513008f0 100644 --- a/assembler/src/gram.y +++ b/assembler/src/gram.y @@ -80,9 +80,10 @@ void set_direct_src_operand(struct src_operand *src, struct direct_reg *reg, %token LCURLY RCURLY %token LSQUARE RSQUARE %token COMMA -%token DOT ABS +%token ABS %left PLUS MINUS %left MULTIPLY DIVIDE +%nonassoc DOT %token TYPE_UD TYPE_D TYPE_UW TYPE_W TYPE_UB TYPE_B %token TYPE_VF TYPE_HF TYPE_V TYPE_F @@ -220,9 +221,8 @@ instrseq: instrseq instruction SEMICOLON $$.first = list_entry; $$.last = list_entry; } - | error SEMICOLON instrseq - { - $$ = $3; + | instrseq error SEMICOLON { + $$ = $1; } ;