2002-11-05 Theodore A. Roth * gdb/c-exp.y: Add missing semi-colons. * gdb/f-exp.y: Add missing semi-colons. * gdb/m2-exp.y: Add missing semi-colons. * gdb/p-exp.y: Add missing semi-colons. Add setup rule to avoid a type clash. Index: gdb/c-exp.y =================================================================== RCS file: /cvs/src/src/gdb/c-exp.y,v retrieving revision 1.16 diff -u -r1.16 c-exp.y --- gdb/c-exp.y 11 Oct 2002 14:02:37 -0000 1.16 +++ gdb/c-exp.y 5 Nov 2002 17:40:43 -0000 @@ -247,9 +247,11 @@ /* Expressions, not including the comma operator. */ exp : '*' exp %prec UNARY { write_exp_elt_opcode (UNOP_IND); } + ; exp : '&' exp %prec UNARY { write_exp_elt_opcode (UNOP_ADDR); } + ; exp : '-' exp %prec UNARY { write_exp_elt_opcode (UNOP_NEG); } Index: gdb/f-exp.y =================================================================== RCS file: /cvs/src/src/gdb/f-exp.y,v retrieving revision 1.8 diff -u -r1.8 f-exp.y --- gdb/f-exp.y 3 Sep 2002 02:45:56 -0000 1.8 +++ gdb/f-exp.y 5 Nov 2002 17:40:43 -0000 @@ -241,9 +241,11 @@ /* Expressions, not including the comma operator. */ exp : '*' exp %prec UNARY { write_exp_elt_opcode (UNOP_IND); } + ; exp : '&' exp %prec UNARY { write_exp_elt_opcode (UNOP_ADDR); } + ; exp : '-' exp %prec UNARY { write_exp_elt_opcode (UNOP_NEG); } @@ -283,6 +285,7 @@ arglist : substring { arglist_len = 2;} + ; arglist : arglist ',' exp %prec ABOVE_COMMA { arglist_len++; } Index: gdb/m2-exp.y =================================================================== RCS file: /cvs/src/src/gdb/m2-exp.y,v retrieving revision 1.6 diff -u -r1.6 m2-exp.y --- gdb/m2-exp.y 3 Sep 2002 02:45:56 -0000 1.6 +++ gdb/m2-exp.y 5 Nov 2002 17:40:46 -0000 @@ -216,6 +216,7 @@ exp : exp '^' %prec UNARY { write_exp_elt_opcode (UNOP_IND); } + ; exp : '-' { number_sign = -1; } @@ -330,6 +331,7 @@ exp : EXCL '(' exp ',' exp ')' { error("Sets are not implemented.");} + ; set : '{' arglist '}' { error("Sets are not implemented.");} Index: gdb/p-exp.y =================================================================== RCS file: /cvs/src/src/gdb/p-exp.y,v retrieving revision 1.16 diff -u -r1.16 p-exp.y --- gdb/p-exp.y 11 Oct 2002 14:02:38 -0000 1.16 +++ gdb/p-exp.y 5 Nov 2002 17:40:46 -0000 @@ -162,7 +162,7 @@ static int search_field; %} -%type exp exp1 type_exp start normal_start variable qualified_name +%type exp exp1 type_exp start setup normal_start variable qualified_name %type type typebase /* %type block */ @@ -230,10 +230,13 @@ %% -start : { current_type = NULL; +start : setup normal_start + ; + +setup : { current_type = NULL; search_field = 0; } - normal_start; + ; normal_start : exp1 @@ -257,11 +260,13 @@ { write_exp_elt_opcode (UNOP_IND); if (current_type) current_type = TYPE_TARGET_TYPE (current_type); } + ; exp : '@' exp %prec UNARY { write_exp_elt_opcode (UNOP_ADDR); if (current_type) current_type = TYPE_POINTER_TYPE (current_type); } + ; exp : '-' exp %prec UNARY { write_exp_elt_opcode (UNOP_NEG); } @@ -317,6 +322,7 @@ write_exp_elt_opcode (BINOP_SUBSCRIPT); if (current_type) current_type = TYPE_TARGET_TYPE (current_type); } + ; exp : exp '(' /* This is to save the value of arglist_len