summaryrefslogtreecommitdiff
path: root/gcc/c-tree.h
diff options
context:
space:
mode:
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2003-07-16 18:45:56 +0000
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2003-07-16 18:45:56 +0000
commit860251bec40a1182f2cec4c8039a6120c165271f (patch)
tree39a0963ec716fc0d03212b9d1c71114101da5421 /gcc/c-tree.h
parent1b5e83e3125575a01fe598726438f4861f2ba7d4 (diff)
downloadgcc-860251bec40a1182f2cec4c8039a6120c165271f.tar.gz
2003-07-16 Andrew Pinski <pinskia@physics.uc.edu>
ChangeLog: PR c/10962 * ggc.h: Add header guards. * c-decl.c (finish_struct): Sort fields if number greater than 15 and there are no anonymous structs/unions. * c-common.h: Include ggc.h. (sorted_fields_type): New struct. (field_decl_cmp): New prototype. (resort_sorted_fields): New prototype. (DECL_DECLARES_TYPE_NON_TEMPLATE_P): New macro. * c-tree.h: (lang_type): Use pointer to sorted_fields_type as s, removing other fields. * c-typeck.c (lookup_field): Use s in lang_type. These were mostly moved from cp/class.c: * c-common.c (field_decl_cmp): New static function. (field_decl_cmp): New function. (resort_sorted_fields): New function. cp/ChangeLog: * class.c (field_decl_cmp): Remove. (resort_field_decl_cmp): Remove. (resort_sorted_fields): Remove. (add_fields_to_vec): Rename to ... (add_fields_to_record_type): this. (finish_struct_1): Change to be using sorted_fields_type's fields. * cp-tree.h (lang_decl): In lang_decl_u3 change sorted_fields to be a pointer to sorted_fields_type. (resort_sorted_fields): Remove prototype. * search.c (lookup_field_1): Change to be using sorted_fields_type's fields. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69470 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-tree.h')
-rw-r--r--gcc/c-tree.h3
1 files changed, 1 insertions, 2 deletions
diff --git a/gcc/c-tree.h b/gcc/c-tree.h
index adfea88924b..50e161e5e46 100644
--- a/gcc/c-tree.h
+++ b/gcc/c-tree.h
@@ -109,8 +109,7 @@ struct lang_decl GTY(())
/* In a RECORD_TYPE, a sorted array of the fields of the type. */
struct lang_type GTY(())
{
- int len;
- tree GTY((length ("%h.len"))) elts[1];
+ struct sorted_fields_type * GTY ((reorder ("resort_sorted_fields"))) s;
};
/* Record whether a type or decl was written with nonconstant size.