diff options
Diffstat (limited to 'gdb/p-exp.y')
-rw-r--r-- | gdb/p-exp.y | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gdb/p-exp.y b/gdb/p-exp.y index 4dc99be8ce4..d52747b072e 100644 --- a/gdb/p-exp.y +++ b/gdb/p-exp.y @@ -233,7 +233,8 @@ static int search_field; start : { current_type = NULL; search_field = 0; } - normal_start; + normal_start {} + ; normal_start : exp1 @@ -257,11 +258,13 @@ exp : exp '^' %prec UNARY { 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 +320,7 @@ exp : exp '[' 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 |