aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorPer Bothner <bothner@gcc.gnu.org>1995-02-13 12:54:24 -0800
committerPer Bothner <bothner@gcc.gnu.org>1995-02-13 12:54:24 -0800
commit1ce7b471ecb2b38ee8fbaf19f080d535a8da5c9b (patch)
tree24a655efadac6f566e52ca3a7ade283c60b63df0 /gcc/tree.h
parent2f7a07c29443ff6eb60f80f713b8e0f18bef77aa (diff)
downloadgcc-1ce7b471ecb2b38ee8fbaf19f080d535a8da5c9b.zip
gcc-1ce7b471ecb2b38ee8fbaf19f080d535a8da5c9b.tar.gz
gcc-1ce7b471ecb2b38ee8fbaf19f080d535a8da5c9b.tar.bz2
* tree.h (FUNCTION_NEEDS_STATIC_CHAIN): New macro.
From-SVN: r8936
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index 352deb9..e67d49f 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -944,6 +944,13 @@ struct tree_type
alternative would be passed. */
#define DECL_TRANSPARENT_UNION(NODE) ((NODE)->decl.transparent_union)
+/* In a FUNCTION_DECL, zero means it is a nested function that needs
+ a trampoline (closure). If nonzero, it is a normal function.
+ (A nested function can be static if it doesn't need to reference
+ stack variables in a surrounding function.)
+ This is unrelated to whether a function is static in the C sense. */
+#define FUNCTION_NEEDS_STATIC_CHAIN(NODE) ((NODE)->decl.transparent_union)
+
/* Used in FUNCTION_DECLs to indicate that they should be run automatically
at the beginning or end of execution. */
#define DECL_STATIC_CONSTRUCTOR(NODE) ((NODE)->decl.static_ctor_flag)