cp-tree.h (finish_label_expr, [...]): Delete.

* cp-tree.h (finish_label_expr, lookup_label): Delete.
	* parse.y: Update for '&&'; don't issue warning here.
	* semantics.c (finish_label_expr): Delete.

From-SVN: r41958
This commit is contained in:
Neil Booth 2001-05-11 06:35:10 +00:00 committed by Neil Booth
parent 487dcdb055
commit 8e93d44655
4 changed files with 7 additions and 30 deletions

View File

@ -1,3 +1,9 @@
2001-05-11 Neil Booth <neil@daikokuya.demon.co.uk>
* cp-tree.h (finish_label_expr, lookup_label): Delete.
* parse.y: Update for '&&'; don't issue warning here.
* semantics.c (finish_label_expr): Delete.
2001-05-07 Mark Mitchell <mark@codesourcery.com>
* splay-tree.h (splay_tree_max): New function.

View File

@ -3791,7 +3791,6 @@ extern tree push_using_decl PARAMS ((tree, tree));
extern tree push_using_directive PARAMS ((tree));
extern void push_class_level_binding PARAMS ((tree, tree));
extern tree implicitly_declare PARAMS ((tree));
extern tree lookup_label PARAMS ((tree));
extern tree declare_local_label PARAMS ((tree));
extern tree define_label PARAMS ((const char *, int, tree));
extern void check_goto PARAMS ((tree));
@ -4269,7 +4268,6 @@ extern tree finish_object_call_expr PARAMS ((tree, tree, tree));
extern tree finish_qualified_object_call_expr PARAMS ((tree, tree, tree));
extern tree finish_pseudo_destructor_call_expr PARAMS ((tree, tree, tree));
extern tree finish_qualified_call_expr PARAMS ((tree, tree));
extern tree finish_label_address_expr PARAMS ((tree));
extern tree finish_unary_op_expr PARAMS ((enum tree_code, tree));
extern tree finish_id_expr PARAMS ((tree));
extern void save_type_access_control PARAMS ((tree));

View File

@ -1224,9 +1224,7 @@ unary_expr:
{ $$ = finish_unary_op_expr ($1, $2); }
/* Refer to the address of a label as a pointer. */
| ANDAND identifier
{ if (pedantic)
pedwarn ("ISO C++ forbids `&&'");
$$ = finish_label_address_expr ($2); }
{ $$ = finish_label_address_expr ($2); }
| SIZEOF unary_expr %prec UNARY
{ $$ = expr_sizeof ($2); }
| SIZEOF '(' type_id ')' %prec HYPERUNARY

View File

@ -1491,31 +1491,6 @@ finish_qualified_call_expr (fn, args)
args);
}
/* Finish an expression taking the address of LABEL. Returns an
expression for the address. */
tree
finish_label_address_expr (label)
tree label;
{
tree result;
label = lookup_label (label);
if (label == NULL_TREE)
result = null_pointer_node;
else
{
TREE_USED (label) = 1;
result = build1 (ADDR_EXPR, ptr_type_node, label);
TREE_CONSTANT (result) = 1;
/* This function cannot be inlined. All jumps to the addressed
label should wind up at the same point. */
DECL_UNINLINABLE (current_function_decl) = 1;
}
return result;
}
/* Finish an expression of the form CODE EXPR. */
tree