(unary_expr => ANDAND identifier): Handle lookup_label returning 0.

From-SVN: r3325
This commit is contained in:
Richard Stallman 1993-01-25 06:37:20 +00:00
parent 7d9795e552
commit e19a77e63b

View File

@ -390,9 +390,15 @@ unary_expr:
/* Refer to the address of a label as a pointer. */
| ANDAND identifier
{ tree label = lookup_label ($2);
TREE_USED (label) = 1;
$$ = build1 (ADDR_EXPR, ptr_type_node, label);
TREE_CONSTANT ($$) = 1; }
if (label == 0)
$$ = null_pointer_node;
else
{
TREE_USED (label) = 1;
$$ = build1 (ADDR_EXPR, ptr_type_node, label);
TREE_CONSTANT ($$) = 1;
}
}
/* This seems to be impossible on some machines, so let's turn it off.
You can use __builtin_next_arg to find the anonymous stack args.
| '&' ELLIPSIS