Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:118847 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 18979 invoked from network); 19 Oct 2022 14:27:47 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 19 Oct 2022 14:27:47 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id A7631180538 for ; Wed, 19 Oct 2022 07:27:46 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-0.2 required=5.0 tests=BAYES_40,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM,HTML_MESSAGE, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-pg1-f176.google.com (mail-pg1-f176.google.com [209.85.215.176]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 19 Oct 2022 07:27:46 -0700 (PDT) Received: by mail-pg1-f176.google.com with SMTP id 78so16386003pgb.13 for ; Wed, 19 Oct 2022 07:27:46 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=USsbfDdn0lW2TQh2I0k2stvY+woir5vcMRoDEiFQucI=; b=eCPDeBxK3bNSTeVlp9hkbHc7723mcvwjzw8Gzwb8Zc5pNcWsgtKqf5FkIuLA6LoMbA QXSXYwpttwsiBeEKwISanSA2TcdXWWeaIlQJTQ29VW26f/f0Jn+d11UjQZ9Y/apw/3HH 3iCOJce5gQA4hlx6UiKW52aSJquNFOSwIx3dYSRWNImQViV5AVorFiV+oz+b7LNm3+zb 0aK3+RQrX9GeqrW/cG6miTBqngIH9qn0rDQjV8MYeZ6ktiZb9G60vjg8JatSQiV0Pide 14qCr/EtBLohTy5R0dq1oi2C5lVSAv2mCFLieYgJi1fYR/lYFYCqLVo9r/xrdVCtVnU7 ItvQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=USsbfDdn0lW2TQh2I0k2stvY+woir5vcMRoDEiFQucI=; b=DCxHsI5mESOcg1BwOzoGOWVV3T3dfipXaYGDDzRLqKDiJWNjUFOFnl6rK3zPVSMRm2 3K5Itpam9x7rmNAAds72q20h/mAFwEnmrHuh1CKwM7EZK/1HWmAOOLJlqy6t/x4HKMmA 4KulHduNdiqndJTfrugBl/R/tvw0XnUJk45AsTGNg5zjk0j24Mhhie9geC04rK78l3R9 Xc8A/IUyRWA/2mXNg3ePZesk/82i3etkKYdsthNN/CyBUJX93J3wg8vazOi4yE7iQizT OjQ4/GX7MrxaTPBMLbkvI2CA/x/T1zDsTlhLDLe0O7buyFSbQCCpW9O5Ii/YFHGhJLYl F6hA== X-Gm-Message-State: ACrzQf1E1ic9b2tYeuUwWi9Nka+maeTTt+91u8nSfUv0Hvp2662ei1OB Juz17249aqbpnKDhn0sY+00TXfSF9aBlyQg26BfJ1rsE2Fo8LQ== X-Google-Smtp-Source: AMsMyM63T/hG+H4MY5RjXEwbIB0RBS/MhjB/xB/s/aHtz98IThMKAFrRzHG7J8Ogxxk+Xs09/HV6SEl/UsC1n+1Cqfc= X-Received: by 2002:a63:1b20:0:b0:464:a9a6:571b with SMTP id b32-20020a631b20000000b00464a9a6571bmr7287566pgb.560.1666189664749; Wed, 19 Oct 2022 07:27:44 -0700 (PDT) MIME-Version: 1.0 Date: Wed, 19 Oct 2022 15:27:33 +0100 Message-ID: To: PHP internals Content-Type: multipart/alternative; boundary="000000000000188d8c05eb64035b" Subject: [PHP-DEV] Should the engine be able to pass variables by reference of userland functions From: george.banyard@gmail.com ("G. P. B.") --000000000000188d8c05eb64035b Content-Type: text/plain; charset="UTF-8" Hello internals, While working on cleaning up the FCI/FCC API I stumbled upon the zend_fcall_info_args_ex() function. This function allows the engine to pass "variables" to userland functions that expect a by-ref parameter. This is currently only used within php-src in PDO when calling the constructor of classes where the result of a statement should be stored in PDO::FETCH_CLASS mode. I am wondering if this makes any sense to continue support in general, and thus in this specific case. As every other engine call to userland function passes by value. A PR of this change is located: https://github.com/php/php-src/pull/9725/files What are your opinions? Best regards, George P. Banyard --000000000000188d8c05eb64035b--