Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:102472 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 42876 invoked from network); 26 Jun 2018 22:44:18 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 26 Jun 2018 22:44:18 -0000 Authentication-Results: pb1.pair.com header.from=smalyshev@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=smalyshev@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.83.47 as permitted sender) X-PHP-List-Original-Sender: smalyshev@gmail.com X-Host-Fingerprint: 74.125.83.47 mail-pg0-f47.google.com Received: from [74.125.83.47] ([74.125.83.47:37246] helo=mail-pg0-f47.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 22/56-01794-1C1C23B5 for ; Tue, 26 Jun 2018 18:44:18 -0400 Received: by mail-pg0-f47.google.com with SMTP id o11-v6so30264pgv.4 for ; Tue, 26 Jun 2018 15:44:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:openpgp:autocrypt:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=h6gUTDa1g0SQ+aev9U/7QvODpyYH1OpWkyVeRFdiZNo=; b=Vhfup4bYONsT0GdNcwKogSxxDH3j4ycMPdt5UIGvlxD+EjVBsg3f80uXMREThK3CQr CEg0mHexZwflVJJeWrKluGHbK4eFoXc4vNgLMe4VU9z5S5+c3A/yV2FJ15VAIGOjT3uO 6IbjkPZkhfvDgTSrc4DLy0dOG9MFRi7coRn9ftKmrdTbFNfK2xOZYi/N45keaHPRMTZw kz6ae2YbxFcvHf+vXUW9qQTo+2lJUndIA1FCMObrZi87gE1N6/ydHSTsmwC7PP1yVW6G OnPMP6EJjXysXT9pUpAmU1BZRmD+xetQoN5YkZBKNBh+L3mDt7EUo5zRF5GaDKPieUI7 HldQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:openpgp:autocrypt :message-id:date:user-agent:mime-version:in-reply-to :content-language:content-transfer-encoding; bh=h6gUTDa1g0SQ+aev9U/7QvODpyYH1OpWkyVeRFdiZNo=; b=dsY18FbVfRdjeioo0MZzkvbvGOLM479jjMfNgV4QQUdA/2Y+kFEl5mxmI9zvFtuvv3 2bIAY/pyW2HUP8nwNecFTgjgkRUzReolHRX65VhjA0GfvqRgLG3k4HtEAetFN8sUNXfV Nf9+X62otGdHv5SdZJGu+qpp9H7X2JBscekQAYaSRx1mzPZe6HH/h7dct6NhaYgiJnBN eR7BfM561/sk6FnQOcXcTSW10nRi/emvMyIYPTGqRv+NWxmRZDLIS0sVMR5gFu9p0d0D W3caLyRUmgVmaQbGcLrtJcN24eThYB89JA3cfZaMKciJHCxjdQwGvXfy+hbWY1r05I3q P6MQ== X-Gm-Message-State: APt69E1C9EfwZjU2iII1SPVizNkLl51v1miRrWy9izdrtl/hn0SnDlUA RLBq4tW7V3jO7zyKkg0w2StaUR73yw== X-Google-Smtp-Source: ADUXVKIF+JpZ7pjo33cchqXiJFbBxcKN/EhTCW/SuXvh/4OMeRXNII2LaMAboT47LiDkVBJ9xdKWIA== X-Received: by 2002:a65:594b:: with SMTP id g11-v6mr3023251pgu.260.1530053053788; Tue, 26 Jun 2018 15:44:13 -0700 (PDT) Received: from Stas-Pro-2021.local ([2600:1700:4a20:3b30:e0a2:ae74:424:1ca7]) by smtp.gmail.com with ESMTPSA id s5-v6sm3844290pgo.65.2018.06.26.15.44.11 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 26 Jun 2018 15:44:12 -0700 (PDT) To: Rowan Collins , internals@lists.php.net References: <17c367f8-3aeb-277f-36c3-f019e6d0d27a@blueyonder.co.uk> <94ff9afc-b3b0-0ae2-55bd-ce6c3936967d@gmail.com> Openpgp: preference=signencrypt Autocrypt: addr=smalyshev@gmail.com; prefer-encrypt=mutual; keydata= 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 Message-ID: Date: Tue, 26 Jun 2018 15:44:09 -0700 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:60.0) Gecko/20100101 Thunderbird/60.0 MIME-Version: 1.0 In-Reply-To: <94ff9afc-b3b0-0ae2-55bd-ce6c3936967d@gmail.com> Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [PHP-DEV] [RFC] Deprecate and remove continue targeting switch From: smalyshev@gmail.com (Stanislav Malyshev) Hi! > Do you mean that this code would be valid in both PHP 7 and PHP 8, but > mean different things? > > while($outer) { >     while($inner) { >         switch($foo) { >             case 1: >                 continue 2; >         } >     } > } > I think this would be unacceptable, because WTF potential and subtle code breakage that would result would be huge. If there are several wrapped loops, it'd be almost impossible to detect that you're now breaking a wrong loop. I think the only thing that could be changed is "continue;" - without an argument - and the thing that should happen is a notice that it may not do what you (might) think it's doing. If you use something like "continue 2;" I would assume you know what you're doing, this is a PHP-specific construct so it is reasonable to assume you checked it does what you think it does. -- Stas Malyshev smalyshev@gmail.com