get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/2194253/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2194253,
    "url": "http://patchwork.ozlabs.org/api/patches/2194253/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/gcc/patch/0bc7e3ac-3584-4f44-8c66-da5e10fd906d@gmx.de/",
    "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": "<0bc7e3ac-3584-4f44-8c66-da5e10fd906d@gmx.de>",
    "list_archive_url": null,
    "date": "2026-02-07T19:31:17",
    "name": "Fortran: fix check for class array valued constructors and functions [PR123961]",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "af05d4f3ea7af9a558282724c830304964d4ba86",
    "submitter": {
        "id": 21263,
        "url": "http://patchwork.ozlabs.org/api/people/21263/?format=api",
        "name": "Harald Anlauf",
        "email": "anlauf@gmx.de"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/gcc/patch/0bc7e3ac-3584-4f44-8c66-da5e10fd906d@gmx.de/mbox/",
    "series": [
        {
            "id": 491395,
            "url": "http://patchwork.ozlabs.org/api/series/491395/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/gcc/list/?series=491395",
            "date": "2026-02-07T19:31:17",
            "name": "Fortran: fix check for class array valued constructors and functions [PR123961]",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/491395/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/2194253/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2194253/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 secure) header.d=gmx.de header.i=anlauf@gmx.de header.a=rsa-sha256\n header.s=s31663417 header.b=GBvsUx8I;\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 dmarc=pass (p=quarantine dis=none) header.from=gmx.de",
            "sourceware.org; spf=pass smtp.mailfrom=gmx.de",
            "server2.sourceware.org;\n arc=none smtp.remote-ip=212.227.17.20"
        ],
        "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 4f7h0R5gvbz1xvW\n\tfor <incoming@patchwork.ozlabs.org>; Sun, 08 Feb 2026 06:31:34 +1100 (AEDT)",
            "from vm01.sourceware.org (localhost [127.0.0.1])\n\tby sourceware.org (Postfix) with ESMTP id 1B01448F4AAE\n\tfor <incoming@patchwork.ozlabs.org>; Sat,  7 Feb 2026 19:31:32 +0000 (GMT)",
            "from mout.gmx.net (mout.gmx.net [212.227.17.20])\n by sourceware.org (Postfix) with ESMTPS id 5ADDC4BA23DF;\n Sat,  7 Feb 2026 19:31:20 +0000 (GMT)",
            "from [192.168.178.29] ([79.232.159.160]) by mail.gmx.net (mrgmx104\n [212.227.17.168]) with ESMTPSA (Nemesis) id 1Mn2aN-1vMNhR2jrj-00cGB4; Sat, 07\n Feb 2026 20:31:18 +0100"
        ],
        "DMARC-Filter": "OpenDMARC Filter v1.4.2 sourceware.org 5ADDC4BA23DF",
        "ARC-Filter": "OpenARC Filter v1.0.0 sourceware.org 5ADDC4BA23DF",
        "ARC-Seal": "i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1770492680; cv=none;\n b=J47MNFLUeGtg/Hz6hwYhicG7k3H1yxY0aCt/RrZkU/8Ba/ABXcL09iub4DFezZYS/JZyk86n6oG2AmHsRdHRZfaADW59yeGffpmt1avm8LCGoq2IlNag7GgXzjuJ0i3djzq9ExrAOrumQjrwxQt5N2dGCp5/TDB9khp2a7MVavo=",
        "ARC-Message-Signature": "i=1; a=rsa-sha256; d=sourceware.org; s=key;\n t=1770492680; c=relaxed/simple;\n bh=amc+vBGJI5KRAxNEfedaBcZKzE6dALnP4fQpfQc9l60=;\n h=DKIM-Signature:Message-ID:Date:MIME-Version:From:Subject;\n b=o/8b0Roi2VWVFcu8I2nLtp++BxkmpcbhcAfmtjiGJs9PTAMnOQ6WpIBNF0DvlJ/6F2HfetywvpEgkHk7ZKvR5ofF+i3JEJBr/WQBp3ioKixp//8ruYiFXVVb7VO8prRZyQgBXq8eaHO0jvn7EsW8pFDHAF+7G5VDgrTkI2T5eFs=",
        "ARC-Authentication-Results": "i=1; server2.sourceware.org",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmx.de;\n s=s31663417; t=1770492679; x=1771097479; i=anlauf@gmx.de;\n bh=17SxGHD6CMAZvkNxUYZpkxsJuITeqMarMGn1C3mkCZo=;\n h=X-UI-Sender-Class:Content-Type:Message-ID:Date:MIME-Version:Cc:\n From:Subject:cc:content-transfer-encoding:content-type:date:from:\n message-id:mime-version:reply-to:subject:to;\n b=GBvsUx8IPIJ6wag3+oXClhjbSe7fNnIFpQlEocrPnQzn5iIz3theUR+OKKyI4FWc\n /MHkRRLtzCi1VTz8bsJ1Ba0kClGmWMqbHWAwf8DHs2vfQPwtNLQx/DSv1+vtVMmCL\n PvqKAdVpgGHYz/Pls/1olGx7D9LILmqZCJGF/LZ7HzM782zdRajyJGAH/0KopLxC8\n ovpfCVeEtplgg5S7mlh/sOVpJ1WDiJUNOsiZB2ndAJZEZZSIyze1fJefzelLJ4YPa\n K7QJAUZA+mXu3Wse+DdNmx4PpTWAi8LurigWCDlj29KttRQjI5cPqh6DpEdszsYW1\n LU0ekvuxTUTo5Dtqow==",
        "X-UI-Sender-Class": "724b4f7f-cbec-4199-ad4e-598c01a50d3a",
        "Content-Type": "multipart/mixed; boundary=\"------------F03phNgA0Yj4WBhaCH0IRo0a\"",
        "Message-ID": "<0bc7e3ac-3584-4f44-8c66-da5e10fd906d@gmx.de>",
        "Date": "Sat, 7 Feb 2026 20:31:17 +0100",
        "MIME-Version": "1.0",
        "User-Agent": "Mozilla Thunderbird",
        "Newsgroups": "gmane.comp.gcc.fortran,gmane.comp.gcc.patches",
        "Content-Language": "en-US",
        "Cc": "fortran <fortran@gcc.gnu.org>, gcc-patches <gcc-patches@gcc.gnu.org>",
        "From": "Harald Anlauf <anlauf@gmx.de>",
        "Subject": "[PATCH] Fortran: fix check for class array valued constructors and\n functions [PR123961]",
        "X-Provags-ID": "V03:K1:v+HfiY6FcXo6uiGGGIIejiE9RzpyNxzmjcBOgUrZMNPhe2f9yA/\n QoClQDQFFEEw2yxEkOV8sj/5t/oI6eK1Tbpge9QaEvZfJxpXXNfMPa8V5GSb3af5SvFVgo3\n XJwjd+CNNGnU5SdTwNSPJj6hFLrKifRA0NYc8x62AId6feW+8EkbZ3MiFx96uO7xl9Kg6om\n 5PGRMh4lBu42DBr0Q0C4Q==",
        "UI-OutboundReport": "notjunk:1;M01:P0:sBjmD5CEdYQ=;uXN4duJwOmyR++8O9//ofvybgC7\n 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\n zbgzOtxiGmpFpRe2qWho",
        "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": "Dear all,\n\nthe attached obvious patch fixes the array check for class array valued\nconstructors and functions, and a latent NULL pointer dereference that\ncould occur later.\n\nRegtested on x86_64-pc-linux-gnu.  OK for mainline / 15-backport?\n\nThanks,\nHarald",
    "diff": "From 5293a3447add8ad017e8cd6bdeb5d484b675dced Mon Sep 17 00:00:00 2001\nFrom: Harald Anlauf <anlauf@gmx.de>\nDate: Sat, 7 Feb 2026 20:23:04 +0100\nSubject: [PATCH] Fortran: fix check for class array valued constructors and\n functions [PR123961]\n\n\tPR fortran/123961\n\ngcc/fortran/ChangeLog:\n\n\t* check.cc (array_check): Extend check to class array functions.\n\t* class.cc (gfc_add_class_array_ref): Fix NULL pointer dereference.\n\ngcc/testsuite/ChangeLog:\n\n\t* gfortran.dg/class_array_24.f90: New test.\n---\n gcc/fortran/check.cc                         |  3 +\n gcc/fortran/class.cc                         |  2 +-\n gcc/testsuite/gfortran.dg/class_array_24.f90 | 58 ++++++++++++++++++++\n 3 files changed, 62 insertions(+), 1 deletion(-)\n create mode 100644 gcc/testsuite/gfortran.dg/class_array_24.f90\n\ndiff --git a/gcc/fortran/check.cc b/gcc/fortran/check.cc\nindex 6bba58e7d1c..4a4e1a8d21d 100644\n--- a/gcc/fortran/check.cc\n+++ b/gcc/fortran/check.cc\n@@ -832,6 +832,9 @@ array_check (gfc_expr *e, int n)\n   if (e->rank != 0 && e->ts.type != BT_PROCEDURE)\n     return true;\n \n+  if (gfc_is_class_array_function (e))\n+    return true;\n+\n   gfc_error (\"%qs argument of %qs intrinsic at %L must be an array\",\n \t     gfc_current_intrinsic_arg[n]->name, gfc_current_intrinsic,\n \t     &e->where);\ndiff --git a/gcc/fortran/class.cc b/gcc/fortran/class.cc\nindex 2798651c411..9c02b9bc81e 100644\n--- a/gcc/fortran/class.cc\n+++ b/gcc/fortran/class.cc\n@@ -273,7 +273,7 @@ gfc_add_class_array_ref (gfc_expr *e)\n   for (ref = e->ref; ref; ref = ref->next)\n     if (!ref->next)\n       break;\n-  if (ref->type != REF_ARRAY)\n+  if (ref && ref->type != REF_ARRAY)\n     {\n       ref->next = gfc_get_ref ();\n       ref = ref->next;\ndiff --git a/gcc/testsuite/gfortran.dg/class_array_24.f90 b/gcc/testsuite/gfortran.dg/class_array_24.f90\nnew file mode 100644\nindex 00000000000..c6b1ec1aa9e\n--- /dev/null\n+++ b/gcc/testsuite/gfortran.dg/class_array_24.f90\n@@ -0,0 +1,58 @@\n+! { dg-do run }\n+! { dg-additional-options \"-O2 -fdump-tree-optimized\" }\n+!\n+! PR fortran/123961 - SIZE and class array valued constructors and functions\n+\n+module test_overload_m\n+  implicit none\n+\n+  type :: foo_t\n+  end type foo_t\n+\n+  interface foo_t\n+     module procedure foo_t_0_\n+     module procedure foo_t_1_\n+     module procedure foo_c_0_\n+     module procedure foo_c_1_\n+  end interface foo_t\n+\n+contains\n+\n+  function foo_t_0_(i) result(foo)\n+    integer, intent(in)      :: i\n+    type(foo_t), allocatable :: foo\n+    allocate (foo)\n+  end function foo_t_0_\n+\n+  function foo_t_1_(i) result(foo)\n+    integer, intent(in)      :: i(:)\n+    type(foo_t), allocatable :: foo(:)\n+\n+    allocate (foo(size (i)))\n+  end function foo_t_1_\n+\n+  function foo_c_0_(r) result(foo)\n+    real, intent(in)          :: r\n+    class(foo_t), allocatable :: foo\n+    allocate (foo)\n+  end function foo_c_0_\n+\n+  function foo_c_1_(r) result(foo)\n+    real, intent(in)          :: r(:)\n+    class(foo_t), allocatable :: foo(:)\n+\n+    allocate (foo(size (r)))\n+  end function foo_c_1_\n+\n+end module test_overload_m\n+\n+program test_overload\n+   use test_overload_m\n+   implicit none\n+\n+   if (size (foo_t([1,2,3])) /= 3) stop 1   ! Optimized\n+   if (size (foo_t([1.,2.])) /= 2) stop 2   ! Optimized\n+\n+end program test_overload\n+\n+! { dg-final { scan-tree-dump-not \"_gfortran_error_stop_numeric\" \"optimized\" } }\n-- \n2.51.0\n\n",
    "prefixes": []
}