Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:129704 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by lists.php.net (Postfix) with ESMTPS id 11CD31A00BC for ; Sat, 27 Dec 2025 22:27:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1766874453; bh=mVDCriOlPDUfdaLzHtUBfE4ChmweWzndfx5tjgWfLcU=; h=References:In-Reply-To:From:Date:Subject:To:From; b=KWswSxKyVRKRfKj8Bm1y7K9yiOJNDzXQoloKlU46vtgcXNPFYaxieAI9PpONOufOm Qp8/FR+TTIZ80S3HpmJAnbIFDqrnWht4yGhBTNcaNFocCiQWTW1QSNVWYfmfKy7luz 9WSzgMc6H+RL2RV7r9eae1IuRhw1aCAl0S5UkoJROOQuUFB+6MVN0ZKzrC7xfuVRZt +R/gwmDe0S5HkXUvIQllIR7gO9/E72/cQxtrhLxKxpvuZJ56spSvmOEgXEZgcZ4DTQ fBPyojExLtHPK9lE3TmNLclLLYUwgM4cu4b7GPbgmR0fHW2xvdHzbSwX1fwgR5Gwcr TqPWpGpV5HhXA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id BD39A180053 for ; Sat, 27 Dec 2025 22:27:29 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_NONE, T_SPF_TEMPERROR autolearn=no autolearn_force=no version=4.0.1 X-Spam-Virus: No X-Envelope-From: Received: from mail-qt1-f170.google.com (mail-qt1-f170.google.com [209.85.160.170]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sat, 27 Dec 2025 22:27:29 +0000 (UTC) Received: by mail-qt1-f170.google.com with SMTP id d75a77b69052e-4eda6c385c0so62326951cf.3 for ; Sat, 27 Dec 2025 14:27:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1766874443; x=1767479243; darn=lists.php.net; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=mVDCriOlPDUfdaLzHtUBfE4ChmweWzndfx5tjgWfLcU=; b=YAQrlh7UHyOJDNOJ1Ka8IplFVsbNzKi2natXcICW4ivBgZ80voGaG+B78zhxWZ0BtK wGB6AcPZNfGxmLSckq3XWlisWBHJZqJgEHoOsbh/tRWjI4l6cmPCkinvB1a9ERyv6eLk or6tTVdj/Li18PclEsUxEiC8JciEc10FVhUyK327+PpxWixk2iECuQ0VlI+Ha+6IGdEi 5gPqjSzw0WB8u71YSkQUKaYyokb6unT0Z7TItx8mjKCz69DTUD93tS7Sy/WuaoK4a7jm NTi6fEnpSuQXcSLIVeISoKZnvNvjPd2Ukn82ZY2TfzX6s/Rn/TlQcQmqDm4+R0LzDiGZ 29HA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1766874443; x=1767479243; h=content-transfer-encoding:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=mVDCriOlPDUfdaLzHtUBfE4ChmweWzndfx5tjgWfLcU=; b=Lj3oWlNNIvzoBWgAfDyMF4iDzOYimqMYSuFNjZiXd14Q6Ll/fTkAO6dXKvULp/S1y9 wGc3Un8I4PebPf1Dc16vUxa0GCEj3oQe1U56IEUWJGwGdOprBs5tJaumirYTkBH5DZgn 0qe00t9V6RXv8EjXK/DOxOid7OnTvWBDgSStXI3HZfvTGjPZGtwKCd+pgW19m1ecNKgM buOb068qq2Fo66cGQL+WMr9xm/qPG3d6TaxvJAmQeJDtUKGMFbOgJTQ/sFcNTH4kDX7m FQN/Ab0y/BpTsRuP1LdBhEozpw46ryQmQ2WKM9spkSn+RjG03ATSDTpVbJpFhkNL8Up+ pLjQ== X-Gm-Message-State: AOJu0YzKj9ppRtm5JE3TTOvMzARpdO6wqqugL0kl0zG3ic76emAkdw8Q cooujVdU25U7ZCw2TqFyL2Gyfmg28yLc/ms4d9HwpvrKzDGS1x8lsKXSTyc0vW574tehnkTc+Xh u+pw0rCRQ+WOWY5vUE8bZe44MpAh/TDd73AWJjiA= X-Gm-Gg: AY/fxX7eOUSKhjVbxOXB9xu4ZofBe7tbC486wn9VwieiNcQvBhnNP0eyAptwygCL4GR 3r56l2xueNt3lEz9iLdmz3MUiEqdFJ5ShaHBj5YI8MQ0DjoHTpK2ricL4Mr6fJiWLtEGEVtxGSR jTsnBAvUX+/JVM1j+xjqGhsdRCtUDEE2wX9nkG5uDBt8YNuY5uXAF9z95IPmfRDk/hnntIaVgHs d8t/xmaI6UXS+s1271Yy4YTvwb232ar4JLNSDtsYwcG+UzpO8cRDP5kKoTVo3H+k3VbwsS4xPpb Yxi3XsdG3xPnauqhJJlzeEC00ZEqUA== X-Google-Smtp-Source: AGHT+IHohbrQFawStXIEdU/Ldx1n6ozFAPZRmYWYBQYsGGg2fwCcgEhI0IfcbfVDKr6/plQcjxVIEMlrPo8b6D7gPNQ= X-Received: by 2002:ac8:5787:0:b0:4ef:bd1c:69ef with SMTP id d75a77b69052e-4f4abd0b68bmr458369731cf.31.1766874443638; Sat, 27 Dec 2025 14:27:23 -0800 (PST) Precedence: list list-help: list-unsubscribe: list-post: List-Id: x-ms-reactions: disallow MIME-Version: 1.0 References: In-Reply-To: Date: Sat, 27 Dec 2025 23:27:12 +0100 X-Gm-Features: AQt7F2qndSpWNCgHnIyttZ_NeAnVLzirWFm5VBDcM7MS04nBGNrdsGNIwDm63Cc Message-ID: Subject: Re: [PHP-DEV] RFC Karma request: native defer keyword (Zig-style) To: PHP internals Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable From: tovilo.ilija@gmail.com (Ilija Tovilo) On Sat, Dec 27, 2025 at 9:14=E2=80=AFPM Ilija Tovilo wrote: > > On Fri, Dec 26, 2025 at 4:41=E2=80=AFPM Khaled Alam wrote: > > > Inspired by Zig's "defer", it schedules a block to run when the current= function exits (return, exception, or natural end), executed in LIFO order= , aimed at safer cleanup without repetitive try/finally scaffolding. Oh, and what I forgot to mention here (but not in the PR), there are two recent RFCs that try to solve a very related problem. - https://wiki.php.net/rfc/optin_block_scoping - https://wiki.php.net/rfc/context-managers Ilija