Hi,
this patch finally makes cactusBSSN working.  The logic which was
supposed to get anonymous namespace type first (if it exists) was
wrong as was caught by a subsetquent assert.

Bootstrapped/regtested x86_64-linux, comitted.
Honza

Index: ChangeLog
===================================================================
--- ChangeLog   (revision 276453)
+++ ChangeLog   (working copy)
@@ -1,3 +1,9 @@
+2019-10-01  Jan Hubicka  <hubi...@ucw.cz>
+
+       PR c++/91222
+       * ipa-devirt.c (warn_types_mismatch): Fix conditional on anonymous
+       namespace types.
+
 2019-10-02  Shahab Vahedi  <sha...@synopsys.com>
 
        * config/arc/arc.h (ASM_SPEC): Pass -mcode-density.
Index: ipa-devirt.c
===================================================================
--- ipa-devirt.c        (revision 276441)
+++ ipa-devirt.c        (working copy)
@@ -986,8 +986,8 @@ warn_types_mismatch (tree t1, tree t2, l
       || (type_with_linkage_p (TYPE_MAIN_VARIANT (t2))
          && type_in_anonymous_namespace_p (TYPE_MAIN_VARIANT (t2))))
     {
-      if (type_with_linkage_p (TYPE_MAIN_VARIANT (t1))
-         && !type_in_anonymous_namespace_p (TYPE_MAIN_VARIANT (t1)))
+      if (!type_with_linkage_p (TYPE_MAIN_VARIANT (t1))
+         || !type_in_anonymous_namespace_p (TYPE_MAIN_VARIANT (t1)))
        {
          std::swap (t1, t2);
          std::swap (loc_t1, loc_t2);

Reply via email to