{"id":2220121,"url":"http://patchwork.ozlabs.org/api/1.0/patches/2220121/?format=json","project":{"id":17,"url":"http://patchwork.ozlabs.org/api/1.0/projects/17/?format=json","name":"GNU Compiler Collection","link_name":"gcc","list_id":"gcc-patches.gcc.gnu.org","list_email":"gcc-patches@gcc.gnu.org","web_url":null,"scm_url":null,"webscm_url":null},"msgid":"<yddecksqnpp.fsf@CeBiTec.Uni-Bielefeld.DE>","date":"2026-04-06T12:26:26","name":"[COMMITTED] testsuite: Fix dg-do-if","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"66ade37d0e863d998f5ce4a9ab54e13199ed1fa9","submitter":{"id":4362,"url":"http://patchwork.ozlabs.org/api/1.0/people/4362/?format=json","name":"Rainer Orth","email":"ro@CeBiTec.Uni-Bielefeld.DE"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/gcc/patch/yddecksqnpp.fsf@CeBiTec.Uni-Bielefeld.DE/mbox/","series":[{"id":498848,"url":"http://patchwork.ozlabs.org/api/1.0/series/498848/?format=json","date":"2026-04-06T12:26:26","name":"[COMMITTED] testsuite: Fix dg-do-if","version":1,"mbox":"http://patchwork.ozlabs.org/series/498848/mbox/"}],"check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/2220121/checks/","tags":{},"headers":{"Return-Path":"<gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org>","X-Original-To":["incoming@patchwork.ozlabs.org","gcc-patches@gcc.gnu.org"],"Delivered-To":["patchwork-incoming@legolas.ozlabs.org","gcc-patches@gcc.gnu.org"],"Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=cebitec.uni-bielefeld.de header.i=@cebitec.uni-bielefeld.de\n header.a=rsa-sha256 header.s=20200306 header.b=S6gKgs2i;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org\n (client-ip=2620:52:6:3111::32; helo=vm01.sourceware.org;\n envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org;\n receiver=patchwork.ozlabs.org)","sourceware.org;\n\tdkim=pass (2048-bit key,\n unprotected) header.d=cebitec.uni-bielefeld.de header.i=@cebitec.uni-bielefeld.de\n header.a=rsa-sha256 header.s=20200306 header.b=S6gKgs2i","sourceware.org; dmarc=none (p=none dis=none)\n header.from=CeBiTec.Uni-Bielefeld.DE","sourceware.org;\n spf=pass smtp.mailfrom=cebitec.uni-bielefeld.de","server2.sourceware.org;\n arc=none smtp.remote-ip=129.70.160.84"],"Received":["from vm01.sourceware.org (vm01.sourceware.org\n [IPv6:2620:52:6:3111::32])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519 server-signature ECDSA (secp384r1) server-digest SHA384)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fq7qk1hVPz1yFt\n\tfor <incoming@patchwork.ozlabs.org>; Mon, 06 Apr 2026 22:26:57 +1000 (AEST)","from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 1BCF34BA5436\n\tfor <incoming@patchwork.ozlabs.org>; Mon,  6 Apr 2026 12:26:56 +0000 (GMT)","from smtp.CeBiTec.Uni-Bielefeld.DE (smtp.CeBiTec.Uni-Bielefeld.DE\n [129.70.160.84])\n by sourceware.org (Postfix) with ESMTPS id 2085B4BA2E21;\n Mon,  6 Apr 2026 12:26:29 +0000 (GMT)","from localhost (localhost.CeBiTec.Uni-Bielefeld.DE [127.0.0.1])\n by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTP id E9B3AE99FB;\n Mon,  6 Apr 2026 14:26:27 +0200 (CEST)","from smtp.CeBiTec.Uni-Bielefeld.DE ([127.0.0.1])\n by localhost (smtp.cebitec.uni-bielefeld.de [127.0.0.1]) (amavisd-new,\n port 10026)\n with ESMTP id egr3bzmABXYV; Mon,  6 Apr 2026 14:26:27 +0200 (CEST)","from manam.CeBiTec.Uni-Bielefeld.DE (p4fddbd93.dip0.t-ipconnect.de\n [79.221.189.147]) (Authenticated sender: ro)\n by smtp.CeBiTec.Uni-Bielefeld.DE (Postfix) with ESMTPSA id 84E89E9AFA;\n Mon,  6 Apr 2026 14:26:27 +0200 (CEST)"],"DKIM-Filter":["OpenDKIM Filter v2.11.0 sourceware.org 1BCF34BA5436","OpenDKIM Filter v2.11.0 sourceware.org 2085B4BA2E21"],"DMARC-Filter":"OpenDMARC Filter v1.4.2 sourceware.org 2085B4BA2E21","ARC-Filter":"OpenARC Filter v1.0.0 sourceware.org 2085B4BA2E21","ARC-Seal":"i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1775478389; cv=none;\n b=cFlUjC/7M0dgVSUzMU/S9rL0TuowvHqIIRrUjYiJ/W2e59LhGq9FcQDinbAklcEQ2ObSiTzQDkkgTH7HmEzFRDUshFJbkvG44BaHavcnF9xN3zqrDS9ZCvE1oh3I5tNkXCuVqgGFFznSffKqic13TYfoY1siRTsZ97VV+Cyh8UA=","ARC-Message-Signature":"i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1775478389; c=relaxed/simple;\n bh=EgxXHRTtuyOglz9LVplq1qg5b8aDAHIlBA1Zw6s/oXo=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=HbRsl1xCzyfal/COret2crQQTPfhVDS2YReOCD3yS5BDrFZmpQcL1NampHMZqpXtY1FSsNqFy2a/AvdIbFWC3HHvCrDd4SuU+b19cx1PGZV3t/n14CIypb033yIsS0LO+a/F7M5GA8pRmOWYk6XEE+IHYiIE328n17s7UDC7A2Q=","ARC-Authentication-Results":"i=1; server2.sourceware.org","DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/simple; d=\n cebitec.uni-bielefeld.de; h=content-type:content-type\n :mime-version:user-agent:message-id:date:date:subject:subject\n :from:from:received:received; s=20200306; t=1775478387; bh=EgxXH\n RTtuyOglz9LVplq1qg5b8aDAHIlBA1Zw6s/oXo=; b=S6gKgs2iRGYoy3CF9H3qy\n QR5sE4k+MJRjcZYKAlpGYQBFoZB/N3QUS40PkbE44LGAQcvDsvi8/8ozAdmGFInX\n dMoxzY0i4E2PKUVQo0dyzI2dNhUM2JKLPxmzhIuZUzGFa0I7VTflsBmsGZB52Pc7\n cCRBNp7vvvtaGC2XkqpISoPEC7CQ3vyWZzooOeGMdys2BiSRF9JEBsmVd/wiwLW2\n iIjYCWxPIBfuDF6OvzGjtYKvfVHZ9XDWCwoClvhwxbfSIvRWJqBUK2rlhENazG4N\n VATaYUVbyN0P07dFZHNbAVrwkSy1PfEvPYOMBMRnZjQ1ftN+iJ84A6Tc/TXB7jRD\n Q==","X-Virus-Scanned":"amavisd-new at cebitec.uni-bielefeld.de","From":"Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>","To":"gcc-patches@gcc.gnu.org","Cc":"Alexandre Oliva <aoliva@gcc.gnu.org>,\n Mike Stump <mikestump@comcast.net>","Subject":"[COMMITTED] testsuite: Fix dg-do-if","Date":"Mon, 06 Apr 2026 14:26:26 +0200","Message-ID":"<yddecksqnpp.fsf@CeBiTec.Uni-Bielefeld.DE>","User-Agent":"Gnus/5.13 (Gnus v5.13)","MIME-Version":"1.0","Content-Type":"multipart/mixed; boundary=\"=-=-=\"","X-BeenThere":"gcc-patches@gcc.gnu.org","X-Mailman-Version":"2.1.30","Precedence":"list","List-Id":"Gcc-patches mailing list <gcc-patches.gcc.gnu.org>","List-Unsubscribe":"<https://gcc.gnu.org/mailman/options/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe>","List-Archive":"<https://gcc.gnu.org/pipermail/gcc-patches/>","List-Post":"<mailto:gcc-patches@gcc.gnu.org>","List-Help":"<mailto:gcc-patches-request@gcc.gnu.org?subject=help>","List-Subscribe":"<https://gcc.gnu.org/mailman/listinfo/gcc-patches>,\n <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe>","Errors-To":"gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org"},"content":"Tests that use dg-do-if ERROR when the target selector matches, e.g.\n\nERROR: gcc.dg/vect/vect-simd-clone-16f.c -flto -ffat-lto-objects: compile: syntax error for \" dg-do-if 1 compile { target { sse2_runtime && { ! sse4_runtime } } } \"\n\nWhile the error message isn't particularly helpful, it's from dg.exp\n(dg-do): like the other dg-* procs it expects the line number to be the\nfirst argument.  However, dg-do-if strips that, so dg-do gets the target\nselector instead of the expected action keyword.\n\nFixed by no longer stripping the line number.\n\nTested on amd64-pc-freebsd15.0 (sse2_runtime && !sse4_runtime),\ni386-pc-solaris2.11 and x86_64-pc-linux-gnu (sse2_runtime &&\nsse4_runtime).\n\nCommitted to trunk.\n\n\nI cannot help thinking that dg-do-if is overkill: it's only used in 4\ntest cases and never actually worked.\n\n\tRainer","diff":"# HG changeset patch\n# Parent  eda78d3442ceaf2f46fa3d600b731501478cb561\ntestsuite: Fix dg-do-if\n\ndiff --git a/gcc/testsuite/lib/target-supports-dg.exp b/gcc/testsuite/lib/target-supports-dg.exp\n--- a/gcc/testsuite/lib/target-supports-dg.exp\n+++ b/gcc/testsuite/lib/target-supports-dg.exp\n@@ -422,9 +422,8 @@ proc check-flags { args } {\n # (possibly the default) prevails.\n \n proc dg-do-if { args } {\n-    set args [lreplace $args 0 0]\n     # Verify the number of arguments.\n-    if { [llength $args] != 2 } {\n+    if { [llength $args] != 3 } {\n \terror \"syntax error, need a single action and target selector\"\n     }\n \n@@ -435,7 +434,7 @@ proc dg-do-if { args } {\n     }\n     \n     # Evaluate selector, return if it does not match.\n-    switch [dg-process-target-1 [lindex $args 1]] {\n+    switch [dg-process-target-1 [lindex $args 2]] {\n \t\"N\" { return }\n \t\"P\" { return }\n     }\n","prefixes":["COMMITTED"]}