cp-tree.h (struct lang_decl): Added field for storing sorted FIELD_DECLs (used in...
authorMichael Tiemann <tiemann@happy.cygnus.com>
Fri, 9 Jul 1999 16:15:04 +0000 (16:15 +0000)
committerJason Merrill <jason@gcc.gnu.org>
Fri, 9 Jul 1999 16:15:04 +0000 (12:15 -0400)
commitf90cdf34d2409c87ade5b20cff4f9b4ffc64cfaf
treefe4da5c0be7eb3c448a6b274d4e1907f06e7d1e7
parent1d02ac8371b1d3b31ed029c29fa23fadeca48787
cp-tree.h (struct lang_decl): Added field for storing sorted FIELD_DECLs (used in TYPE_DECLs).

* cp-tree.h (struct lang_decl): Added field for storing sorted
FIELD_DECLs (used in TYPE_DECLs).
(DECL_PENDING_INLINE_INFO): Adjusted to use 'u' union.
(DECL_SORTED_FIELDS): New macro.
* class.c (method_name_cmp): New function.
(finish_struct_methods): Modified to support sorting and searching
methods.
(finish_struct_anon): Changed code in inner loop to use ELT rather
than UELT (which required an extra indirection for every reference).
(field_decl_cmp): New function to support sorting FIELD_DECLs.
(finish_struct_1): Sort fields.
* search.c (lookup_field_1): Use DECL_SORTED_FIELDS if we have them.
(lookup_fnfields_1): Search sorted methods in METHOD_VEC.
Also, switch to using array indexing rather than a changing pointer.
* ptree.c (print_lang_decl): Handle TYPE_DECLs that have
DECL_SORTED_FIELDS.

Co-Authored-By: Jason Merrill <jason@yorick.cygnus.com>
From-SVN: r28046
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/ptree.c
gcc/cp/search.c