Kill CLASSTYPE_SORTED_FIELDS.
commit7c06dc60b60bda757b1cf50fedd650bfd73dccaa
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 Sep 2017 12:50:56 +0000 (12 12:50 +0000)
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 12 Sep 2017 12:50:56 +0000 (12 12:50 +0000)
tree9efd23e51160d2e92bd32f30d928a7d16301d189
parentc8c010c376c537efa1ab60ff5ab3c893dcdb57b0
Kill CLASSTYPE_SORTED_FIELDS.
* cp-tree.h (struct lang_type): Lose sorted_fields member.
(CLASSTYPE_SORTED_FIELDS): Delete.
* name-lookup.h (set_class_bindings): Add EXTRA arg.
* name-lookup.c (fields_linear_search): New, broken out of ...
(lookup_field_1): ... here.  Delete remainder of function.
(get_class_binding_direct): Reimplement without sorted_fields.
(get_class_binding): Rename TYPE arg to KLASS, for consistency.
(get_method_slot): Call set_class_binding when creating method_vec
on complete type.
(method_name_cmp): Order identically named slots.
(sorted_fields_type_new): Delete.
(field_vc_append_class_fields): Rename to ...
(method_vec_append_class_fields): ... here.  Adjust.
(field_vec_append_enum_values): Renme to ...
(method_vec_append_enum_values): ... here. Adjust.
(method_vec_dedup): New.
(set_class_bindings): Reimplement.
(insert_late_enum_def_bindings): Reimplement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@252005 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/name-lookup.c
gcc/cp/name-lookup.h