Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:114093 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 61537 invoked from network); 22 Apr 2021 07:52:46 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 22 Apr 2021 07:52:46 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 7AAF81804C6 for ; Thu, 22 Apr 2021 00:55:44 -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=-2.1 required=5.0 tests=BAYES_00,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 autolearn=no autolearn_force=no version=3.4.2 X-Spam-Virus: No X-Envelope-From: Received: from mail-il1-f180.google.com (mail-il1-f180.google.com [209.85.166.180]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Thu, 22 Apr 2021 00:55:43 -0700 (PDT) Received: by mail-il1-f180.google.com with SMTP id l19so33183092ilk.13 for ; Thu, 22 Apr 2021 00:55:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=U/NskCw/HdBTbm9tc0VGVTHNSx/hPysMvjGpo/xWAOs=; b=c+J9GDqMisBy0AUVl3wfYOuiMeziZWCN4qtqEjaz4RCM+o/gbvppRRO5aF6S124J59 N93MQYFARdX8J2Hy6Xu1eyIO+tTY14AMGplDJbOXETIMXdDZSwyY+xNeb194Uzq2oTr3 dUB5f48nVuthfsL51SJd6OF+oqWTs8XZkFeWdPXXJdnG8nt9TP/gu/t6wXeN71RiuAJw Tv9TPyCk8AiaaptrIbEzWJMkaMPZifKJKnWmmSuvEosf4DP4Eb3T5azM85KD3YVqapIz qbVnaiOx6kamB85XLwjmTqgCbB6RIhC9C4gJWXEf6QePOIQ7iggPcWUtjsaQ9z9f8p/W +Vsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=U/NskCw/HdBTbm9tc0VGVTHNSx/hPysMvjGpo/xWAOs=; b=sUxnpGjnMlCOQcrMUhOkKyp5Crx5dEnf/o4OyVBOipLybGtUvdur4ryQAquLqOXhih nILjDzvgkKKEhPd987Tw26Zr4ouN1V9//A5TyTMoZ18iDyOws0Yvuw+zI4wQ71DJdNa0 FNtmeHvGhAPycOIoP4IfdV/9UIx5QU2/QIzhp/kP5GSGFH1OrMZ8FugTAetVAAHP5pkN ytSSvGWONqPsEWHQz13xfni+IdEPrfqOznA2rYlCeXyiXnxAkvjIMlc2dMrqBuu5BgG4 FfPncbmPLD/cwL6a0GtirnE+8x1ncZEj82qox04Oe5Pnl5bryY5+p5Np9G72EqilsufP nZCQ== X-Gm-Message-State: AOAM532tZDuR7730fOFkLcbwj7B68dMpjrT8c8XBPKQ+2qVOK4nVTvJS SNOrdJ4hFDQzGhALz1jy+mv3YGkplHdLm9rLflo= X-Google-Smtp-Source: ABdhPJyJsbAGvlV7a117cA0iwAXrszgjDgWdWqO96YGDn9fAZabK7+fYliry4+yzexPUJWQprMYSsbof+qB6af1k8GU= X-Received: by 2002:a92:cd8a:: with SMTP id r10mr1729283ilb.282.1619078140765; Thu, 22 Apr 2021 00:55:40 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: Date: Thu, 22 Apr 2021 09:55:28 +0200 Message-ID: To: =?UTF-8?B?TcOhdMOpIEtvY3Npcw==?= Cc: PHP Internals List Content-Type: multipart/alternative; boundary="00000000000071ab8205c08b0106" Subject: Re: [PHP-DEV] [RFC] [Vote] Adding return types to internal methods From: ocramius@gmail.com (Marco Pivetta) --00000000000071ab8205c08b0106 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hey M=C3=A1t=C3=A9, On Thu, Apr 22, 2021, 09:42 M=C3=A1t=C3=A9 Kocsis = wrote: > Hi Internals, > > I've just opened the vote about > https://wiki.php.net/rfc/internal_method_return_types > and I will close it on 2021-05-06. > > For prior discussion, please see https://externals.io/message/113413 Overall OK with the RFC, but we do such a.fuss about not breaking compat on inheritance for then breaking it in reflection, where we add two methods that completely shake down the tree. Therefore I voted NO, especially considering the implications this has on libraries like BetterReflection: the return type is there and it is clear, it just hasn't been explicitly declared by the engine, but there isn't a need for dropping it from reflection. In fact, if reflection were to switch to the actual runtime return types of those methods, I don't see a reason why downstream consumers would break (stubbing tools, code generators, type checkers, dependency solvers, etc.) I would vote yes on the RFC if this section were omitted, and reflection started to report the new types in 8.1 (or another 8.x). --00000000000071ab8205c08b0106--