This is the libcc1 change. When creating a clone, it needs to fiddle with
TYPE_FIELDS now.
nathan
--
Nathan Sidwell
2017-07-14 Nathan Sidwell <nat...@acm.org>
libcc1/
* libcp1plugin.cc (plugin_build_decl): Member fns are on TYPE_FIELDS.
Index: libcc1/libcp1plugin.cc
===================================================================
--- libcc1/libcp1plugin.cc (revision 250160)
+++ libcc1/libcp1plugin.cc (working copy)
@@ -1556,7 +1556,7 @@ plugin_build_decl (cc1_plugin::connectio
if ((ctor || dtor)
/* Don't crash after a duplicate declaration of a cdtor. */
- && TYPE_METHODS (current_class_type) == decl)
+ && TYPE_FIELDS (current_class_type) == decl)
{
/* ctors and dtors clones are chained after DECL.
However, we create the clones before TYPE_METHODS is
@@ -1568,9 +1568,9 @@ plugin_build_decl (cc1_plugin::connectio
tree save = DECL_CHAIN (decl);
DECL_CHAIN (decl) = NULL_TREE;
clone_function_decl (decl, /*update_methods=*/true);
- gcc_assert (TYPE_METHODS (current_class_type) == decl);
- TYPE_METHODS (current_class_type)
- = nreverse (TYPE_METHODS (current_class_type));
+ gcc_assert (TYPE_FIELDS (current_class_type) == decl);
+ TYPE_FIELDS (current_class_type)
+ = nreverse (TYPE_FIELDS (current_class_type));
DECL_CHAIN (decl) = save;
}