aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree.h
diff options
context:
space:
mode:
authorMarc Glisse <marc.glisse@inria.fr>2017-06-23 11:05:47 +0200
committerMarc Glisse <glisse@gcc.gnu.org>2017-06-23 09:05:47 +0000
commit2db9b7cd422b63fe0a87218128cc0939b439859e (patch)
tree8874bb67d61acd34ac953c902f78942ea9e4d604 /gcc/tree.h
parent70fdc808941016567f8e55caea593324b15df230 (diff)
downloadgcc-2db9b7cd422b63fe0a87218128cc0939b439859e.zip
gcc-2db9b7cd422b63fe0a87218128cc0939b439859e.tar.gz
gcc-2db9b7cd422b63fe0a87218128cc0939b439859e.tar.bz2
Refactor fileptr_type_node handling
2017-06-23 Marc Glisse <marc.glisse@inria.fr> gcc/ * tree.h (builtin_structptr_type): New type. (builtin_structptr_types): Declare new array. * tree.c (builtin_structptr_types): New array. (free_lang_data, build_common_tree_nodes): Use it. gcc/c-family/ * c-common.c (c_common_nodes_and_builtins): Use builtin_structptr_types. gcc/cp/ * decl.c (duplicate_decls): Use builtin_structptr_types. gcc/lto/ * lto-lang.c (lto_init): Use builtin_structptr_types. From-SVN: r249585
Diffstat (limited to 'gcc/tree.h')
-rw-r--r--gcc/tree.h9
1 files changed, 9 insertions, 0 deletions
diff --git a/gcc/tree.h b/gcc/tree.h
index bfe83f7..7a4f5d6 100644
--- a/gcc/tree.h
+++ b/gcc/tree.h
@@ -5523,4 +5523,13 @@ desired_pro_or_demotion_p (const_tree to_type, const_tree from_type)
return to_type_precision <= TYPE_PRECISION (from_type);
}
+/* Pointer type used to declare builtins before we have seen its real
+ declaration. */
+struct builtin_structptr_type
+{
+ tree& node;
+ tree& base;
+ const char *str;
+};
+extern const builtin_structptr_type builtin_structptr_types[2];
#endif /* GCC_TREE_H */