From patchwork Wed Jan 26 19:27:20 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jason Merrill X-Patchwork-Id: 50463 Return-Path: X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 3CC58382C401 for ; Wed, 26 Jan 2022 19:28:04 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3CC58382C401 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1643225284; bh=XdsvAFBe0dQBdSYNf3sblpsJ9H3/flF5L2mwpbIICrM=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=akPFmWTZrt/fURDE0QWujP1PC8EfFSdzlDEpM04IRHjP4tRZfbcD7SnxZErszkKNS fvPNUc9d7WpicgkcZDvlDueiX6jrLIGBVT/zu6/Vo+cB0UvMSpME1diTnqjgqHA7ls v4rVXC2aihLP1BQYdcUNA6pX3tnw93uQ2cQL/NXs= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by sourceware.org (Postfix) with ESMTPS id F0FC6385ED71 for ; Wed, 26 Jan 2022 19:27:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F0FC6385ED71 Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id us-mta-492-_RDpg6jLMCSNnPzxBcQw4g-1; Wed, 26 Jan 2022 14:27:24 -0500 X-MC-Unique: _RDpg6jLMCSNnPzxBcQw4g-1 Received: by mail-qt1-f197.google.com with SMTP id h5-20020ac87765000000b002cff8751c63so523254qtu.3 for ; Wed, 26 Jan 2022 11:27:24 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:subject:date:message-id:mime-version :content-transfer-encoding; bh=XdsvAFBe0dQBdSYNf3sblpsJ9H3/flF5L2mwpbIICrM=; b=Xrib5zHmttYh3QkvCfObzyn9HtZgIbMqRQIZTR1OIe+8MxqgsxQxBVRqq3r+X+0k5N NT0d1mQWxGM7RL+judjmLUE5VddadjxOckCWqKqoG8wDN93wLUyFI0uZQvf9aDO7rGuj QUEc6qHzq2aTNds5ouZM4sXuX++2P1CDhz/bU96e6aw8Y0T+tWhOWUowgPXTGokFzyZo FgQpg91hBwiL4/KDID13Z34sxYQnVwYArUp/hCUaUEaOZ1Kj+/AIMg5V5yyQtZXPhC+Y ShnFIEziBHLjuNDO5G2S5xNoUsJE8VRaSvcDUrqxAk9L2BpOrXtYCKzjJf2xfPuACuWV CHKA== X-Gm-Message-State: AOAM531GrFKj/tJk1PemMwQHzY4bFQs3L31xFs6YmgUt3AumUjdxS5+Y apfPwqG+a+TWdEo92hJtrIuHYOosiPOqhuOR40IcolERF7vpg/qe3o+h8mM0krnh0zpnD45O460 ioLGLwH2qJeN/ua4MDUGDprUvtr22enSlQwTHd09i0oXb8mpgMPk78gce81jbIKcCzQ== X-Received: by 2002:a37:a409:: with SMTP id n9mr270486qke.120.1643225243709; Wed, 26 Jan 2022 11:27:23 -0800 (PST) X-Google-Smtp-Source: ABdhPJx0yAGRT4EL636Amhvh4sdc7yc715h2uW247t+pxSw355B5KySuW3wxLovguYteFQC9RywHpg== X-Received: by 2002:a37:a409:: with SMTP id n9mr270465qke.120.1643225243288; Wed, 26 Jan 2022 11:27:23 -0800 (PST) Received: from barrymore.redhat.com (130-44-159-43.s15913.c3-0.arl-cbr1.sbo-arl.ma.cable.rcncustomer.com. [130.44.159.43]) by smtp.gmail.com with ESMTPSA id k190sm90473qkf.59.2022.01.26.11.27.21 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Jan 2022 11:27:22 -0800 (PST) To: gcc-patches@gcc.gnu.org Subject: [pushed] c++: vector compound literal [PR104206] Date: Wed, 26 Jan 2022 14:27:20 -0500 Message-Id: <20220126192720.1207780-1-jason@redhat.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com X-Spam-Status: No, score=-13.1 required=5.0 tests=BAYES_00, DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_LOW, RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-Patchwork-Original-From: Jason Merrill via Gcc-patches From: Jason Merrill Reply-To: Jason Merrill Errors-To: gcc-patches-bounces+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" My patch for PR101072 removed the specific VECTOR_TYPE handling here, which broke pr72747-2.c on PPC; this patch restores it. Tested x86_64-pc-linux-gnu, applying to trunk. PR c++/104206 PR c++/101072 gcc/cp/ChangeLog: * semantics.cc (finish_compound_literal): Restore VECTOR_TYPE check. --- gcc/cp/semantics.cc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) base-commit: 00d8321124123daf41f7c51526355a5a610cdeb8 prerequisite-patch-id: c7ab4056fcbd782232c8dc091597602ecd4a7a48 diff --git a/gcc/cp/semantics.cc b/gcc/cp/semantics.cc index 07c2b3393be..466d6b56871 100644 --- a/gcc/cp/semantics.cc +++ b/gcc/cp/semantics.cc @@ -3272,8 +3272,9 @@ finish_compound_literal (tree type, tree compound_literal, /* Represent other compound literals with TARGET_EXPR so we produce a prvalue, and can elide copies. */ - if (TREE_CODE (compound_literal) == CONSTRUCTOR - || TREE_CODE (compound_literal) == VEC_INIT_EXPR) + if (!VECTOR_TYPE_P (type) + && (TREE_CODE (compound_literal) == CONSTRUCTOR + || TREE_CODE (compound_literal) == VEC_INIT_EXPR)) { /* The CONSTRUCTOR is now an initializer, not a compound literal. */ if (TREE_CODE (compound_literal) == CONSTRUCTOR)