diff options
author | Jakub Jelinek <jakub@redhat.com> | 2017-07-24 15:02:06 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2017-07-24 15:02:06 +0200 |
commit | 570e228b5e0ca01cc433786df5c61aa583e22469 (patch) | |
tree | 97d8af1b430b9803999c016095e5a8f6836fa34e /gcc/doc | |
parent | 4b40986c044a5c80bfa3edb1670104f89bc8fd6b (diff) | |
download | gcc-570e228b5e0ca01cc433786df5c61aa583e22469.zip gcc-570e228b5e0ca01cc433786df5c61aa583e22469.tar.gz gcc-570e228b5e0ca01cc433786df5c61aa583e22469.tar.bz2 |
re PR target/81521 (After [r250413] GCC 8.0 doesn't compile for Windows)
PR bootstrap/81521
* tree.def: Remove TYPE_METHODS documentation, adjust TYPE_FIELDS
documentation.
* doc/generic.texi: Likewise.
* config/i386/winnt-cxx.c (i386_pe_adjust_class_at_definition): Look
for FUNCTION_DECLs in TYPE_FIELDS rather than TYPE_METHODS.
From-SVN: r250476
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/generic.texi | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/gcc/doc/generic.texi b/gcc/doc/generic.texi index 8585216..874d464 100644 --- a/gcc/doc/generic.texi +++ b/gcc/doc/generic.texi @@ -2820,7 +2820,6 @@ This function cannot be used with namespaces that have @findex BINFO_TYPE @findex TYPE_FIELDS @findex TYPE_VFIELD -@findex TYPE_METHODS Besides namespaces, the other high-level scoping construct in C++ is the class. (Throughout this manual the term @dfn{class} is used to mean the @@ -2837,7 +2836,7 @@ macro to discern whether or not a particular type is a @code{class} as opposed to a @code{struct}. This macro will be true only for classes declared with the @code{class} tag. -Almost all non-function members are available on the @code{TYPE_FIELDS} +Almost all members are available on the @code{TYPE_FIELDS} list. Given one member, the next can be found by following the @code{TREE_CHAIN}. You should not depend in any way on the order in which fields appear on this list. All nodes on this list will be @@ -2849,7 +2848,11 @@ list, if the enumeration type was declared in the class. (Of course, the @code{TYPE_DECL} for the enumeration type will appear here as well.) There are no entries for base classes on this list. In particular, there is no @code{FIELD_DECL} for the ``base-class portion'' of an -object. +object. If a function member is overloaded, each of the overloaded +functions appears; no @code{OVERLOAD} nodes appear on the @code{TYPE_FIELDS} +list. Implicitly declared functions (including default constructors, +copy constructors, assignment operators, and destructors) will appear on +this list as well. The @code{TYPE_VFIELD} is a compiler-generated field used to point to virtual function tables. It may or may not appear on the @@ -2857,14 +2860,6 @@ virtual function tables. It may or may not appear on the @code{TYPE_VFIELD} just like all the entries on the @code{TYPE_FIELDS} list. -The function members are available on the @code{TYPE_METHODS} list. -Again, subsequent members are found by following the @code{TREE_CHAIN} -field. If a function is overloaded, each of the overloaded functions -appears; no @code{OVERLOAD} nodes appear on the @code{TYPE_METHODS} -list. Implicitly declared functions (including default constructors, -copy constructors, assignment operators, and destructors) will appear on -this list as well. - Every class has an associated @dfn{binfo}, which can be obtained with @code{TYPE_BINFO}. Binfos are used to represent base-classes. The binfo given by @code{TYPE_BINFO} is the degenerate case, whereby every |