summaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authormrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>1996-05-17 20:13:01 +0000
committermrs <mrs@138bc75d-0d04-0410-961f-82ee72b054a4>1996-05-17 20:13:01 +0000
commit0e676ec9ec5dbfc271f292230e054b8e5af88a11 (patch)
tree984e0626a1a5e2e8f7ff306f11134448208ba86c /gcc/tree.h
parent23b44fdadc6ae299eda159f023667a7602ce5a07 (diff)
downloadgcc-0e676ec9ec5dbfc271f292230e054b8e5af88a11.tar.gz
* expr.c (expand_expr, cond UNSAVE_EXPR): Move from the C++
frontend to the backend where it belongs. * tree.c (unsave_expr): Ditto. (unsave_expr_now): Ditto. * tree.def (UNSAVE_EXPR): Ditto. * tree.h (unsave_expr): Ditto. (unsave_expr_now): Ditto. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@12015 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index dea5d77e123..ab2df453a5d 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -1436,6 +1436,17 @@ extern int lvalue_or_else PROTO((tree, char *));
extern tree save_expr PROTO((tree));
+/* unsave_expr (EXP) returns an expression equivalent to EXP but it
+ can be used multiple times and will evaluate EXP, in it's entirety
+ each time. */
+
+extern tree unsave_expr PROTO((tree));
+
+/* unsave_expr_now (EXP) resets EXP in place, so that it can be
+ expanded again. */
+
+extern tree unsave_expr_now PROTO((tree));
+
/* Return 1 if EXP contains a PLACEHOLDER_EXPR; i.e., if it represents a size
or offset that depends on a field within a record.