From patchwork Thu May 25 08:06:25 2023 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: 70049 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 09C5A3954403 for ; Thu, 25 May 2023 08:18:38 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 09C5A3954403 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1685002718; bh=Y7+JVnKjoD7oUhj1oUMvL0Nu67ATVTiQmuMrhHqCBz8=; h=To:Cc:Subject:Date:List-Id:List-Unsubscribe:List-Archive: List-Post:List-Help:List-Subscribe:From:Reply-To:From; b=BrwOkxeG1b6wcPSgxm0/585hLvMOjDs//rtUIvGKX77OnhLQ3bfgbb+e+5/VhATzA wTXqpKBNzkA612zfrVYWOCc/7LbrjA3WDFUxJy11lFZa/Pqj0y3TYXlcKwUGYpqPRH oJHc0k1wi/rHqn06WosaxNXoZfO9QHfKRRUb1vBQ= X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from mail-wr1-x430.google.com (mail-wr1-x430.google.com [IPv6:2a00:1450:4864:20::430]) by sourceware.org (Postfix) with ESMTPS id F2C423882008 for ; Thu, 25 May 2023 08:06:28 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F2C423882008 Received: by mail-wr1-x430.google.com with SMTP id ffacd0b85a97d-30950eecc1eso1773472f8f.0 for ; Thu, 25 May 2023 01:06:28 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1685001988; x=1687593988; 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=Y7+JVnKjoD7oUhj1oUMvL0Nu67ATVTiQmuMrhHqCBz8=; b=LGOrG6DkI8IfaI55sN+trCBn+QjqIasJTv6kdzwuoTPBlDDVGqssOMjGofe/EV5SUQ lilLB3yVwm9NiD7smSqPsn6fkF9IdaTU5c3GFRs3VD7cH4PYR+eO6YoRVdUDE/5fIO3j 3Pbp44BPSgrcXGKs8ZVKicJNx8Z/Qb6EkqKIilBY9biLvKfXS+zfNFpaAGxxL8Uq8eHi jNp3FOoQf4LFQOv7Oyi2S4bnmj8gFZGoClf3d9qyRXFH0QvAPpUb09jYGfK2CwRD3WqJ JBbi040k+WH3ZgmcjCZolOURlAzSZ4uqFAFSNPsFigiKpxJdVL58NwODcBOds3ln6+i+ 0jVQ== X-Gm-Message-State: AC+VfDyqvbdh8tV5ph3H6SOZUOwIlS+47REAlwpcDlqLKSGnu/Ncwxwm uFa1TPneruvpOJ9j9CtjFA7yk0pnpvBJjpXhAjr+hA== X-Google-Smtp-Source: ACHHUZ5ALNqVX9o9PoEIsKWtY26MRLRGf96kQKXykhU4wdEcmJG7wk8sUtXC+/kIRljRtGAlPa9wPA== X-Received: by 2002:adf:f791:0:b0:306:2d45:a8e0 with SMTP id q17-20020adff791000000b003062d45a8e0mr1741640wrp.15.1685001987215; Thu, 25 May 2023 01:06:27 -0700 (PDT) Received: from poulhies-Precision-5550.telnowedge.local (lmontsouris-659-1-24-67.w81-250.abo.wanadoo.fr. [81.250.175.67]) by smtp.gmail.com with ESMTPSA id o3-20020a5d6843000000b003095a329e90sm852834wrw.97.2023.05.25.01.06.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 25 May 2023 01:06:26 -0700 (PDT) To: gcc-patches@gcc.gnu.org Cc: Piotr Trojanek Subject: [COMMITTED] ada: Expect Exceptional_Cases as a context for attribute Old Date: Thu, 25 May 2023 10:06:25 +0200 Message-Id: <20230525080625.1957864-1-poulhies@adacore.com> X-Mailer: git-send-email 2.40.0 MIME-Version: 1.0 X-Spam-Status: No, score=-13.7 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, T_SCC_BODY_TEXT_LINE 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+patchwork=sourceware.org@gcc.gnu.org Sender: "Gcc-patches" From: Piotr Trojanek When determining whether attribute Old is evaluated conditionally, we must also expect it to appear in the recently added contract Exceptional_Cases. gcc/ada/ * sem_util.adb (Determining_Expressions): Fix style; fix layout and ordering of pragma names; expect pragma Exceptional_Cases. Tested on x86_64-pc-linux-gnu, committed on master. --- gcc/ada/sem_util.adb | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gcc/ada/sem_util.adb b/gcc/ada/sem_util.adb index 6b5abc92c96..aabd01747fc 100644 --- a/gcc/ada/sem_util.adb +++ b/gcc/ada/sem_util.adb @@ -30651,9 +30651,9 @@ package body Sem_Util is (Expr : Node_Id; Expr_Trailer : Node_Id := Empty) return Determining_Expression_List is - Par : Node_Id := Expr; - Trailer : Node_Id := Expr_Trailer; - Next_Element : Determining_Expr; + Par : Node_Id := Expr; + Trailer : Node_Id := Expr_Trailer; + Next_Element : Determining_Expr; begin -- We want to stop climbing up the tree when we reach the -- postcondition expression. An aspect_specification is @@ -30761,9 +30761,13 @@ package body Sem_Util is else pragma Assert (Get_Pragma_Id (Pragma_Name (Par)) in - Pragma_Post | Pragma_Postcondition - | Pragma_Post_Class | Pragma_Refined_Post - | Pragma_Check | Pragma_Contract_Cases); + Pragma_Check + | Pragma_Contract_Cases + | Pragma_Exceptional_Cases + | Pragma_Post + | Pragma_Postcondition + | Pragma_Post_Class + | Pragma_Refined_Post); return (1 .. 0 => <>); -- recursion terminates here end if;