Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/2218068/?format=api
{ "id": 2218068, "url": "http://patchwork.ozlabs.org/api/patches/2218068/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/20260331104730.3162-3-gerris.rs@gmail.com/", "project": { "id": 17, "url": "http://patchwork.ozlabs.org/api/projects/17/?format=api", "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, "list_archive_url": "", "list_archive_url_format": "", "commit_url_format": "" }, "msgid": "<20260331104730.3162-3-gerris.rs@gmail.com>", "list_archive_url": null, "date": "2026-03-31T10:47:28", "name": "[gccrs,COMMIT,3/5] gccrs: add test cases for fn qualifiers, default keyword", "commit_ref": null, "pull_url": null, "state": "new", "archived": false, "hash": "920aee627cc6b236505c7d8908941b4ac786e9b0", "submitter": { "id": 92092, "url": "http://patchwork.ozlabs.org/api/people/92092/?format=api", "name": null, "email": "gerris.rs@gmail.com" }, "delegate": null, "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/20260331104730.3162-3-gerris.rs@gmail.com/mbox/", "series": [ { "id": 498172, "url": "http://patchwork.ozlabs.org/api/series/498172/?format=api", "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=498172", "date": "2026-03-31T10:47:28", "name": "[gccrs,COMMIT,1/5] Add `default` as function qualifier.", "version": 1, "mbox": "http://patchwork.ozlabs.org/series/498172/mbox/" } ], "comments": "http://patchwork.ozlabs.org/api/patches/2218068/comments/", "check": "pending", "checks": "http://patchwork.ozlabs.org/api/patches/2218068/checks/", "tags": {}, "related": [], "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=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=nyUzsyme;\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=gmail.com header.i=@gmail.com header.a=rsa-sha256\n header.s=20251104 header.b=nyUzsyme", "sourceware.org;\n dmarc=pass (p=none dis=none) header.from=gmail.com", "sourceware.org; spf=pass smtp.mailfrom=gmail.com", "server2.sourceware.org;\n arc=none smtp.remote-ip=209.85.210.53" ], "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 4flPxR57kNz1xtJ\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 31 Mar 2026 21:48:58 +1100 (AEDT)", "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 9E4E04B92099\n\tfor <incoming@patchwork.ozlabs.org>; Tue, 31 Mar 2026 10:48:56 +0000 (GMT)", "from mail-ot1-f53.google.com (mail-ot1-f53.google.com\n [209.85.210.53])\n by sourceware.org (Postfix) with ESMTPS id 86A5E4BA2E27\n for <gcc-patches@gcc.gnu.org>; Tue, 31 Mar 2026 10:47:36 +0000 (GMT)", "by mail-ot1-f53.google.com with SMTP id\n 46e09a7af769-7d744d9acbeso2246560a34.1\n for <gcc-patches@gcc.gnu.org>; Tue, 31 Mar 2026 03:47:36 -0700 (PDT)", "from\n runnervmrg6be.xariblbjf3ru1nzambwxmzlesd.gx.internal.cloudapp.net\n ([52.173.123.150]) by smtp.gmail.com with ESMTPSA id\n 46e09a7af769-7da0a819880sm7914900a34.22.2026.03.31.03.47.35\n (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);\n Tue, 31 Mar 2026 03:47:35 -0700 (PDT)" ], "DKIM-Filter": [ "OpenDKIM Filter v2.11.0 sourceware.org 9E4E04B92099", "OpenDKIM Filter v2.11.0 sourceware.org 86A5E4BA2E27" ], "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 86A5E4BA2E27", "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 86A5E4BA2E27", "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1774954056; cv=none;\n b=K/hrxVYgCcQCki+WYHarbyT2bxVbd9HyIdgeymc7AsfRpyr9aApRWmGiP2nqid0Hx4GZeWWKktz9Ykdsrf665BNwWduAWiLwiBOu+9XUetLMYEfapFg8KqH9ItuiHu4E67KiwXt7VnllKAMpnLarvr+9xwsDZ/t8vL3DmA7BaY4=", "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1774954056; c=relaxed/simple;\n bh=1n6RFFdt/zlyv/QWoKuPWJvWkNFkPCfm/9unakVGTuc=;\n h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version;\n b=HxkxmPjJ3G/Wh10TTVjoHUH4RdvCirxO4xjGvL3rpxc4EEaBFiLBzDu6XrJJNsq5sXMlXF2sMh6i4caBVPiy0k5Yos6/5yprenzYpm0GGxY3GXIA0oBz4wO3YzxIywxWrOrqsxyEYIlIfGlv5emOvX/KqxzUSB68fXPHWDG+/YI=", "ARC-Authentication-Results": "i=1; server2.sourceware.org", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=gmail.com; s=20251104; t=1774954056; x=1775558856; darn=gcc.gnu.org;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:from:to:cc:subject:date\n :message-id:reply-to;\n bh=8dKYvtGJ7eujqNFBh5vaB6GlhUQ3HLOpb6itDJ1QYBI=;\n b=nyUzsymex3rar6NtXcIzzFG7fqVKK2AgE4BIXylFBIswO709D3bC60mRdrQmqcIGMi\n bgysbFv3yjZ9wSIjbNSRJupN5ck3/hVG/SXGywEOmZ4z+iXQ1BwXTmiEfj9ORRnbnS1K\n MVrNxaaQLFQ+T3GYMhB065K6Ge/jcNxGCubiT+cfe6C9rwoCB1YhYSqx0ROqYY/BzN9r\n +BlRHsXtOzL/K4leicUZF2KBdinqmVzlA5EU/Eqx3R0/o0MhLyHDuzovjn/U1fN36+Xm\n OItlnEd7UTjoxoObel0diPKs8QE9190LAvvdPePhcnjLmXM/sa50Wsprtq1OAA6D24/A\n yU9w==", "X-Google-DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed;\n d=1e100.net; s=20251104; t=1774954056; x=1775558856;\n h=content-transfer-encoding:mime-version:references:in-reply-to\n :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from\n :to:cc:subject:date:message-id:reply-to;\n bh=8dKYvtGJ7eujqNFBh5vaB6GlhUQ3HLOpb6itDJ1QYBI=;\n b=DozeJPv52xLKTZ8PB1IrY90XQtpBvfZ+VzLLM6fLsgNygMqoWKJXzBVUtL93omv3EA\n quD1OWqpqyWElRPV9lHyBlNf6LlsTdVrPi0/A9q/3+dAEQqiZ+b6wZvU98vLgPBj4are\n h84abGFnJg0usoyG2kcvoDccnPIFcGqhzSnbVWLd+gdjp1oBzwIO/ihjqaJ1UEBdAAyy\n b+q+9sIZBeGCL8A7q64mOa+ANF8g1BVnXDWwr3lhc+feUlcKWPnAFFvlHdPZzuN/AwLu\n e9WIYUFYtlt3EO5GgrrWTAt+1S0n5aTrPKAwo4cfyRtYjnOWMfLBozfkzWh0r2I0+6zN\n vsxg==", "X-Gm-Message-State": "AOJu0YwUi9CDVorepB+Yv0B6IUw3AVn1fdQbrJ+Jv29nGJc1wdrhcGHs\n Qcn+o2fRNuR2YHPiXtKzw9kx4SfvhO5xoylieYghyrzItzeO40fk91R/Hmhoi48s", "X-Gm-Gg": "ATEYQzyW40JpNcCGx5RCJTBqAo7ZAFAZa3jv/rh81hZkV3XggrtZGZ5V6Q+2x75cOBy\n xBhSEIC+9K8OafAC4EWF11Ucr7DcU/aQqaNM0gRmpgdmsbBBIbkvA322QXJq84z/WOpKLVJccSu\n k4AG4SY2htiZFf9eP3NpUk8zTaRCD6NpUncKNgMMFjPyXAp3/XuO+OjdnnzT9mMc7QuTuod6kh8\n vE1ETAQ154qHnXbF0mlTHr75m0dHQcbDSVjStJaDrH/VrtoNuQXKQ76Mm6LKz2FNzy65zEtDo1Q\n v4iQELtJb+BmTfaGNtoy48pvTJj76QjKp4HIxycF0TRnz3+kT/YzDQUeD6IgEul4FjLHv5YxZEA\n oDOdWLIRBBneLGL0eyRXmKFXEAbHeZ/KbOU2KKya/6gT6G988JGy79Helj2ApfyaSgeKdaGEufV\n WAE2ion01/5Lx6g9nUOCZpHHsDto3v/maEnI/tpj9m88Vb+vQJZCO9qyJOcfxR57535YD8fIZb6\n hUqnBSj4ya2xaemXX9J7Xk=", "X-Received": "by 2002:a05:6830:2117:b0:7d7:fcac:6374 with SMTP id\n 46e09a7af769-7d9fadbef26mr9443926a34.8.1774954055815;\n Tue, 31 Mar 2026 03:47:35 -0700 (PDT)", "From": "gerris.rs@gmail.com", "To": "gcc-patches@gcc.gnu.org,\n\tgcc-rust@gcc.gnu.org", "Cc": "pierre-emmanuel.patry@embecosm.com, arthur.cohen@embecosm.com,\n dkm+gccrs@kataplop.net, Philipp Gesang <phg@phi-gamma.net>", "Subject": "[gccrs COMMIT 3/5] gccrs: add test cases for fn qualifiers,\n default keyword", "Date": "Tue, 31 Mar 2026 10:47:28 +0000", "Message-ID": "<20260331104730.3162-3-gerris.rs@gmail.com>", "X-Mailer": "git-send-email 2.43.0", "In-Reply-To": "<20260331104730.3162-1-gerris.rs@gmail.com>", "References": "<20260331104730.3162-1-gerris.rs@gmail.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "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": "From: Philipp Gesang <phg@phi-gamma.net>\n\ngcc/testsuite/ChangeLog:\n\n\t* rust/compile/func-qualifier-order.rs: New test file\n\t* rust/compile/func-qualifier-default.rs: New test file\n\nSigned-off-by: Philipp Gesang <phg@phi-gamma.net>\n---\nThis change was merged into the gccrs repository and is posted here for\nupstream visibility and potential drive-by review, as requested by GCC\nrelease managers.\nEach commit email contains a link to its details on github from where you can\nfind the Pull-Request and associated discussions.\n\n\nCommit on github: https://github.com/Rust-GCC/gccrs/commit/8593faf0e3b258f80a9da40a80177860f9cb76ef\n\nThe commit has been mentioned in the following pull-request(s):\n - https://github.com/Rust-GCC/gccrs/pull/4463\n\n .../rust/compile/func-qualifier-default.rs | 18 +++++++++\n .../rust/compile/func-qualifier-order.rs | 39 +++++++++++++++++++\n 2 files changed, 57 insertions(+)\n create mode 100644 gcc/testsuite/rust/compile/func-qualifier-default.rs\n create mode 100644 gcc/testsuite/rust/compile/func-qualifier-order.rs", "diff": "diff --git a/gcc/testsuite/rust/compile/func-qualifier-default.rs b/gcc/testsuite/rust/compile/func-qualifier-default.rs\nnew file mode 100644\nindex 000000000..e2e600c4b\n--- /dev/null\n+++ b/gcc/testsuite/rust/compile/func-qualifier-default.rs\n@@ -0,0 +1,18 @@\n+#![feature(specialization)]\n+#![feature(no_core)]\n+#![no_core]\n+\n+trait Trait {\n+ fn unqualified_fn();\n+ unsafe fn unsafe_fn();\n+}\n+\n+impl<T> Trait for T {\n+ default fn unqualified_fn() {}\n+\n+ // `default` precedes all other qualifiers\n+ unsafe default fn unsafe_fn() {}\n+ // { dg-error \"expecting .fn. but .identifier. found\" \"\" { target *-*-* } .-1 }\n+ // { dg-error \"expecting ... but .fn. found\" \"\" { target *-*-* } .-2 }\n+ // { dg-error \"failed to parse trait impl item in trait impl\" \"\" { target *-*-* } .-3 }\n+}\ndiff --git a/gcc/testsuite/rust/compile/func-qualifier-order.rs b/gcc/testsuite/rust/compile/func-qualifier-order.rs\nnew file mode 100644\nindex 000000000..f26bc2767\n--- /dev/null\n+++ b/gcc/testsuite/rust/compile/func-qualifier-order.rs\n@@ -0,0 +1,39 @@\n+// { dg-additional-options \"-frust-edition=2018\" }\n+#![allow(unused)]\n+#![allow(incomplete_features)]\n+\n+#![feature(no_core)]\n+#![no_core]\n+\n+mod valid {\n+ pub fn unqualified_fn() {}\n+\n+ const fn const_fn() {}\n+\n+ pub async fn async_fn() {}\n+\n+ pub unsafe fn unsafe_fn() {}\n+\n+ async unsafe fn async_unsafe_fn() {}\n+\n+ unsafe extern \"C\" fn unsafe_extern_fn() {}\n+\n+ async unsafe extern \"C\" fn async_unsafe_extern_fn() {}\n+\n+ const unsafe extern \"C\" fn const_unsafe_extern_fn() {}\n+\n+ /*\n+ // `safe` is not implemented yet\n+ unsafe extern \"C\" {\n+ safe fn const_safe_extern_fn();\n+ }\n+ */\n+}\n+\n+mod invalid {\n+ // `async` precedes `unsafe`\n+ unsafe async fn async_unsafe_fn() {}\n+ // { dg-error \"unexpected token .async. in some sort of unsafe production\" \"\" { target *-*-* } .-1 }\n+ // { dg-error \"failed to parse item in module\" \"\" { target *-*-* } .-2 }\n+}\n+\n", "prefixes": [ "gccrs", "COMMIT", "3/5" ] }