From patchwork Wed Oct 2 12:45:57 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jan Hubicka X-Patchwork-Id: 1170643 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=pass (mailfrom) smtp.mailfrom=gcc.gnu.org (client-ip=209.132.180.131; helo=sourceware.org; envelope-from=gcc-patches-return-510061-incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=ucw.cz Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="r4iAA6BX"; dkim-atps=neutral Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 46jwqY3GRdz9sPL for ; Wed, 2 Oct 2019 22:46:17 +1000 (AEST) DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :from:to:subject:message-id:mime-version:content-type; q=dns; s= default; b=bjgYOPjmLQVbj9yJzifcsMF+CfGpu6a7MHCMCoM4wor5x+TbPeYyd ssPXjLnED+zyc1TSFVCj/LwFtUE+ye6Km7fELxAqm1rUemkn4bHUNXdhdhXcuICB RTWMsxefigBftj/oSIwCRcKI4C0nzBPxfApQPsYOJSVQnzJ9jhhqT8= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender:date :from:to:subject:message-id:mime-version:content-type; s= default; bh=yLr0GhdfkOUA+Ru5ekc/vntkQMQ=; b=r4iAA6BXowb8V0vHZu5+ fZIgv3GbeTd5mH5g6lHXBn1rBiWzPcF5D/gH0G/06BPjHLiFkga9CngvWvkKQQrD ETO8HLgFFFRpUOZ3BBNWOgKzjw7KLbJcArfehR+fH7zyMCAwoipb/Hr/TvdlaThi HlBmqYAzjXjc25PYNg/JsSM= Received: (qmail 71643 invoked by alias); 2 Oct 2019 12:46:01 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 71569 invoked by uid 89); 2 Oct 2019 12:46:01 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-9.7 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_2, GIT_PATCH_3, KAM_ASCII_DIVIDERS autolearn=ham version=3.3.1 spammy= X-HELO: nikam.ms.mff.cuni.cz Received: from nikam.ms.mff.cuni.cz (HELO nikam.ms.mff.cuni.cz) (195.113.20.16) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 02 Oct 2019 12:45:59 +0000 Received: by nikam.ms.mff.cuni.cz (Postfix, from userid 16202) id 1E27F280FD3; Wed, 2 Oct 2019 14:45:57 +0200 (CEST) Date: Wed, 2 Oct 2019 14:45:57 +0200 From: Jan Hubicka To: gcc-patches@gcc.gnu.org Subject: Fix another -Wodr ICE Message-ID: <20191002124557.hdj7g6laygt7fx6p@kam.mff.cuni.cz> MIME-Version: 1.0 Content-Disposition: inline User-Agent: NeoMutt/20170113 (1.7.2) 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 + + PR c++/91222 + * ipa-devirt.c (warn_types_mismatch): Fix conditional on anonymous + namespace types. + 2019-10-02 Shahab Vahedi * 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);