tree.c (build_srcloc): Make sure we allocate this node on the permanent obstack.

* tree.c (build_srcloc): Make sure we allocate this node on the
	permanent obstack.
fixes OSE compilation failures

From-SVN: r20793
This commit is contained in:
Brendan Kehoe 1998-06-29 13:39:23 +00:00 committed by Brendan Kehoe
parent cb6abb6fd5
commit a48ebb5650
2 changed files with 24 additions and 1 deletions

View file

@ -1,3 +1,8 @@
1998-06-29 Brendan Kehoe <brendan@cygnus.com>
* tree.c (build_srcloc): Make sure we allocate this node on the
permanent obstack.
Sat Jun 27 23:34:18 1998 Fred Fish <fnf@ninemoons.com>
* g++spec.c (NEED_MATH_LIBRARY): Define to 1 if not already defined.

View file

@ -211,6 +211,12 @@ lvalue_p (ref)
return (lvalue_p (TREE_OPERAND (ref, 0))
&& lvalue_p (TREE_OPERAND (ref, 1)));
case NOP_EXPR:
/* GNU extension:
A cast is a valid lvalue if its operand is an lvalue. */
if (! pedantic)
return lvalue_p (TREE_OPERAND (ref, 0));
default:
break;
}
@ -2300,9 +2306,21 @@ build_srcloc (file, line)
char *file;
int line;
{
tree t = make_node (SRCLOC);
tree t;
/* Make sure that we put these on the permanent obstack; up in
add_pending_template, we pass this return value into perm_tree_cons,
which also puts it on the permanent_obstack. However, this wasn't
explicitly doing the same. */
register struct obstack *ambient_obstack = current_obstack;
current_obstack = &permanent_obstack;
t = make_node (SRCLOC);
SRCLOC_FILE (t) = file;
SRCLOC_LINE (t) = line;
current_obstack = ambient_obstack;
return t;
}