From patchwork Mon Nov 7 08:40:21 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?Marc_Poulhi=C3=A8s?= X-Patchwork-Id: 16308 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a5d:6687:0:0:0:0:0 with SMTP id l7csp1920430wru; Mon, 7 Nov 2022 00:46:19 -0800 (PST) X-Google-Smtp-Source: AMsMyM7Y5ygTJ/bqN9Y4RrxFje90f4ETBjWovfHLxY88Y+vgWflmEgDodyLuAJOfc7XQI0czC4Pm X-Received: by 2002:a05:6402:1cca:b0:460:7d72:8f2 with SMTP id ds10-20020a0564021cca00b004607d7208f2mr49718042edb.205.1667810779728; Mon, 07 Nov 2022 00:46:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1667810779; cv=none; d=google.com; s=arc-20160816; b=mBvniqVB6ewB5FZ8JSgs7Vn1e+xZdOKwkiHcSMiBNfl2916vqUiBozLHqx9cGglSiH NaJ243lt5SLQaSNbSmmCjiJPxRJ6qqsx8uuAPbSXt+VM+k4wiZleswNvlDTiGqJFQhUN Cgz0Uckh3QP3LJc90yOrRwy2gH7/K43S6ALZIHeCJG9jUFJ0jkAlTKQqXyassh+7Bd6+ u1qZblUFB/oCGEdL9akjyCiweHZFrfx0akPVqfB9a5r2opGqw1H9bRm76rRvZ84S2Exf 3c9nE7UieM5Bl3aXVrZXF9vJT/PSwMlVtFQK1luRv2TcjK0ytsU5vQ2iwB0QSR3uavHY VGKg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:reply-to:from:list-subscribe:list-help:list-post :list-archive:list-unsubscribe:list-id:precedence :content-transfer-encoding:mime-version:message-id:date:subject:cc :to:dmarc-filter:delivered-to:dkim-signature:dkim-filter; bh=O7fmY6RXm4C3n42bEk4CqGJw8pxNcFIs2D00d871Vio=; b=frScM8XmUBLFVUekq+dYSokXZ38fetoS3wL4+VvQjslpQdSp41IcNioBqvoVb3fLfy ko5sXNr+tuXxiD3gIJzzbGcBRb1H3UwdVtmps6Mi4N1Q6ndYFda5TMZoptUDQiZUiSVw kZl46GOBtMWIZqYEmuHScEqcc0KIlrEkB0ugiHoZfoeLCumHEjBRyt3Ijg48FUU8Hbzb HlMyF6fYoEVp/sXXjCzjCRZNMChYAob0k1BU3zzJqSsLxZyrYvV2VRDRWzpELtrcO1pw +3QWPvclDaiW12rSPe327nWb5fgN8kdpTy+UzItw0suyoG+HqMXF5D2ZFDKN4s7XXCqh QVmg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gcc.gnu.org header.s=default header.b=tgdYwO9+; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gnu.org Received: from sourceware.org (server2.sourceware.org. [8.43.85.97]) by mx.google.com with ESMTPS id l12-20020a170906794c00b007adb80fc5d0si9866015ejo.461.2022.11.07.00.46.19 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Nov 2022 00:46:19 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) client-ip=8.43.85.97; Authentication-Results: mx.google.com; dkim=pass header.i=@gcc.gnu.org header.s=default header.b=tgdYwO9+; spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 8.43.85.97 as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=gnu.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4059A388553F for ; Mon, 7 Nov 2022 08:43:01 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 4059A388553F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1667810581; bh=O7fmY6RXm4C3n42bEk4CqGJw8pxNcFIs2D00d871Vio=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=tgdYwO9+1cjA6FYj0ioAUnNTTW1dNV4B8rNYVQmZCQ04DNzH1+NS8qPOJYgS/STzg M1AHlvqTYimHQtD1xaqLPHyXtCfPuXd6K88KF6m575kkPcW1cCF50Y15HdKLV/E/wJ ewQu6Jj4E1qTzUsF5uAlbu+BKmHc2uHSl8qtturc= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-wr1-x436.google.com (mail-wr1-x436.google.com [IPv6:2a00:1450:4864:20::436]) by sourceware.org (Postfix) with ESMTPS id AF5C8385840A for ; Mon, 7 Nov 2022 08:40:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org AF5C8385840A Received: by mail-wr1-x436.google.com with SMTP id z14so15046326wrn.7 for ; Mon, 07 Nov 2022 00:40:25 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=O7fmY6RXm4C3n42bEk4CqGJw8pxNcFIs2D00d871Vio=; b=adIKzAf5T+pvfX0lWt/s9zml9UmdQ3Dd81NL0TAaEQRAUvFVqF0RoBDlnE8te8jZMd sXH/1Ye/BZCWBDX5HO31vVCcCZyjhHp3p7bq0/X7WNGLQVtKFlbc7LKt1Rlro9R2eW8W TR6QY3klGXzNKSFV+0BzrqrzoDzkSQ+bgc+zLTRSWWmAdp4P/+uWZOO/Ay8p64CP0sHc RJ5+C8tpG2lUwqRK8YlEBnr+ZSQyq5D2Uc+fIuErP5+FD7qEDXruwWLBQkUD13C6nteC ljFiu1rWtQKbyZ9dM5Uz81ZDstfsRxRZhmggNegl3oqeTetiMyr79Q2nJ4+tfx26QnhK Hfkw== X-Gm-Message-State: ACrzQf01g63DT4a1Uch8Kzn8q4BXgVbh3O+nGX6pnhVqraDzQQ7EVNbd K+d4ebQmHFWIPYkuj5lYIwtgarBJV3Etlw== X-Received: by 2002:adf:f5c4:0:b0:236:c419:710f with SMTP id k4-20020adff5c4000000b00236c419710fmr27565484wrp.56.1667810424501; Mon, 07 Nov 2022 00:40:24 -0800 (PST) Received: from poulhies-Precision-5550.lan (static-176-191-105-132.ftth.abo.bbox.fr. [176.191.105.132]) by smtp.gmail.com with ESMTPSA id m42-20020a05600c092a00b003cf5ec79bf9sm7318985wmp.40.2022.11.07.00.40.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 07 Nov 2022 00:40:24 -0800 (PST) To: gcc-patches@gcc.gnu.org Cc: Piotr Trojanek Subject: [COMMITTED] ada: Remove redundant suppression for non-modified IN OUT parameters Date: Mon, 7 Nov 2022 09:40:21 +0100 Message-Id: <20221107084021.151112-1-poulhies@adacore.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 X-Spam-Status: No, score=-13.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) 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: =?utf-8?q?Marc_Poulhi=C3=A8s_via_Gcc-patches?= From: =?utf-8?q?Marc_Poulhi=C3=A8s?= Reply-To: =?utf-8?q?Marc_Poulhi=C3=A8s?= Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org Sender: "Gcc-patches" X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1748826356398929377?= X-GMAIL-MSGID: =?utf-8?q?1748826356398929377?= From: Piotr Trojanek Non-modified IN OUT parameters are first collected and then filtered by examining uses of their enclosing subprograms. In this filtering we don't need to look again at properties of the formal parameters themselves. Cleanup related to improved detection of references to uninitialized objects; semantics is unaffected. gcc/ada/ * sem_warn.adb (No_Warn_On_In_Out): For subprograms we can simply call Warnings_Off. (Output_Non_Modified_In_Out_Warnings): Remove repeated suppression. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/sem_warn.adb | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gcc/ada/sem_warn.adb b/gcc/ada/sem_warn.adb index 4552d907bac..1bfa8449ad7 100644 --- a/gcc/ada/sem_warn.adb +++ b/gcc/ada/sem_warn.adb @@ -3006,9 +3006,9 @@ package body Sem_Warn is then return True; - -- Else test warnings off + -- Else test warnings off on the subprogram - elsif Warnings_Off_Check_Spec (S) then + elsif Warnings_Off (S) then return True; -- All tests for suppressing warning failed @@ -3029,11 +3029,9 @@ package body Sem_Warn is begin -- Suppress warning in specific cases (see details in comments for - -- No_Warn_On_In_Out), or if there is a pragma Unmodified. + -- No_Warn_On_In_Out). - if Has_Pragma_Unmodified_Check_Spec (E1) - or else No_Warn_On_In_Out (E1) - then + if No_Warn_On_In_Out (E1) then null; -- Here we generate the warning