Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:95551 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 33514 invoked from network); 2 Sep 2016 06:19:30 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 2 Sep 2016 06:19:30 -0000 Authentication-Results: pb1.pair.com smtp.mail=dmitry@zend.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=dmitry@zend.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain zend.com designates 104.47.33.130 as permitted sender) X-PHP-List-Original-Sender: dmitry@zend.com X-Host-Fingerprint: 104.47.33.130 mail-bn3nam01on0130.outbound.protection.outlook.com Received: from [104.47.33.130] ([104.47.33.130:55703] helo=NAM01-BN3-obe.outbound.protection.outlook.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 53/30-19490-FE919C75 for ; Fri, 02 Sep 2016 02:19:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=RWSoftware.onmicrosoft.com; s=selector1-zend-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=Nfh/GGncrG5NTespNIQuTvtLcZr7i4JfK2ePcVWS5Lk=; b=Ar38JH9LQYMcEoFLee/4OoM1KJ5ncErG2xWmXgjdjyggxu2we0VNxX2gGHcqZu9K48bAS3uV+VQafnKysVFuzquBG1a1f+e0RzX1MbKhtzhBoreeBqlSJ/zn7XDqhuhlLad1qUGa9fc4WYv0Z7+YiulR9YLb3PkUJYc0ah3HXmk= Received: from BY2PR0201MB1784.namprd02.prod.outlook.com (10.163.72.26) by BY2PR0201MB1781.namprd02.prod.outlook.com (10.163.72.23) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA_P384) id 15.1.587.13; Fri, 2 Sep 2016 06:19:23 +0000 Received: from BY2PR0201MB1784.namprd02.prod.outlook.com ([10.163.72.26]) by BY2PR0201MB1784.namprd02.prod.outlook.com ([10.163.72.26]) with mapi id 15.01.0587.018; Fri, 2 Sep 2016 06:19:23 +0000 To: David Walker , "Christoph M. Becker" , Marco Pivetta CC: PHP Internals List , Nikita Popov Thread-Topic: [PHP-DEV] Re: [RFC][VOTE] E_WARNING on invalid container read-adccess Thread-Index: AQHR/sbmD9xxW9A3CEyHAOpTP2AfSKBiom/BgAANfoCAADEn/YAACJCAgAA1bQCAAACBgIAArAoAgABzN8aAAKKngIAA4uKR Date: Fri, 2 Sep 2016 06:19:22 +0000 Message-ID: References: <1e6cac8a-e1af-c9e7-a900-a2efda0771dd@gmx.de> , In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: authentication-results: spf=none (sender IP is ) smtp.mailfrom=dmitry@zend.com; x-originating-ip: [132.245.81.165] x-ms-office365-filtering-correlation-id: 7a6a821b-5a43-479a-6de5-08d3d2f91506 x-microsoft-exchange-diagnostics: 1;BY2PR0201MB1781;6:ljj+szGZHydzaJaYOXrU4vWVaxoBEjuhpwaRHxQiQ27e1QgqXL1e5KG+TLy1EcluKanaXo4FnIUrTXS92S4bIPrcg8B4htxwrpHANcUVMOtZYVnlC+Zj6a4jjS5CAgi0MjEWxctmwDLdH8EBinduk9zwx7C0GanTApK75mPOZuqwj5OQFPviC18q5TZKVELsv14Jvx2brVLrZTSJqSqwoEQFCjxXj7KqSpYP6uzorH/DI3+TRob3309X2yP5kzknW20Gv94lyl8xPAbbw1RLQP4tfqHphgfO8jE1dqaSptA=;5:jn0SzgKMeelEXzbvaUIuxhDK0SOVodADnbXVWe+ZOcJ+fe2LXLPV0MCvYFArmihwtfzwwsf3DsEwkr7UHouA/vD/2gukBmPyWJx4kGVu86IcyBWdhYuTTBZ3XL66S4hPKIwNKcWgzsabCe8rDvw94A==;24:a01YxrLdnYhsSyo7zJWMliFx0u89D3G9qtUaZTeq7/l7L8ui3FIN9rc9SWx7xobgsFKe439NGTtdP8dsHh4qpSElz+6HxDHTUEKBTC5J0q8=;7:BmLmGnk3XuYb2oVRXl6C9f/YpwlcrKNZIKPYXhCoo36s5aq4bE/O2szNGhtBWpk5rjrrjZe75uXg7t0blpwf2LQNraqX2uaufWkJdwSJSe2lvFnzOK2pCTeDX2mFqrJOc4OhHnKC8is2FVEqbGhnOAJzFuV/VSCv1PBb/zhuIp37iVOx/rCUYR2ACEN+pk4f2KEif2Xge6YrhzUGxcje1jbqjo4jfxzE+oThmzM9aAIchCIxBI4vVyYAAi0GelIq x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0201MB1781; x-microsoft-antispam-prvs: x-exchange-antispam-report-test: UriScan:; x-exchange-antispam-report-cfa-test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(10201501046)(3002001);SRVR:BY2PR0201MB1781;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0201MB1781; x-forefront-prvs: 00531FAC2C x-forefront-antispam-report: SFV:NSPM;SFS:(10019020)(7916002)(377454003)(24454002)(189002)(199003)(8676002)(97736004)(92566002)(19617315012)(15975445007)(50986999)(54356999)(77096005)(76176999)(2900100001)(7696003)(7846002)(2950100001)(7736002)(19580405001)(8936002)(5001770100001)(81166006)(586003)(81156014)(5660300001)(11100500001)(19627405001)(86362001)(8666005)(93886004)(3846002)(16236675004)(102836003)(6116002)(99286002)(10400500002)(101416001)(2906002)(1680700002)(7906003)(19625215002)(66066001)(3280700002)(105586002)(106116001)(4326007)(19580395003)(5002640100001)(122556002)(9686002)(3660700001)(74316002)(87936001)(68736007)(106356001)(189998001)(76576001)(16601075003)(33656002)(7059030);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR0201MB1781;H:BY2PR0201MB1784.namprd02.prod.outlook.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; received-spf: None (protection.outlook.com: zend.com does not designate permitted sender hosts) spamdiagnosticoutput: 1:99 spamdiagnosticmetadata: NSPM Content-Type: multipart/alternative; boundary="_000_BY2PR0201MB17844B23AC958588BF147676BFE50BY2PR0201MB1784_" MIME-Version: 1.0 X-OriginatorOrg: zend.com X-MS-Exchange-CrossTenant-originalarrivaltime: 02 Sep 2016 06:19:22.7441 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 32210298-c08b-4829-8097-6b12c025a892 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR0201MB1781 Subject: Re: [PHP-DEV] Re: [RFC][VOTE] E_WARNING on invalid container read-adccess From: dmitry@zend.com (Dmitry Stogov) --_000_BY2PR0201MB17844B23AC958588BF147676BFE50BY2PR0201MB1784_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Looking forward won't always work out of the box. Take into account possible TICK opcodes, BEGIN/END silence, debugging opcod= es. It's probably easier to throw exception, instead of recovery, but this is a= BC break, and might be done only in 8.0. Thanks. Dmitry. ________________________________ From: David Walker Sent: Thursday, September 1, 2016 7:40:15 PM To: Dmitry Stogov; Christoph M. Becker; Marco Pivetta Cc: PHP Internals List; Nikita Popov Subject: Re: [PHP-DEV] Re: [RFC][VOTE] E_WARNING on invalid container read-= adccess On Thu, Sep 1, 2016 at 1:03 AM Dmitry Stogov > wrote: Hi David, I would propose to cancel voting and restart it when the good implementatio= n is found. Otherwise, people may rise their hands for something that can't be implemen= ted in good enough way. Thanks. Dmitry. Hi Dmitry (et.al), I ended up addressing the problem you raised where simply looking at the ne= xt opcode type wasn't verbose enough, and had the thrown exception. So I'm wondering the reasons why looking ahead wouldn't be considered a goo= d implementation? The attempt to limit the quantity of raised warnings, an= d raising once for a null, does need to be aware if the return of our op, i= s being used again in the next op. I do notice that in zend_execute there'= s no other examples of looking forward an opline, but that it does exist wi= thin zend_vm. I'm wondering if a more acceptable implementation would be t= o move the logic of looking-forward and checking if the next fetch-dim-r to= the opcode-handler. Or, if your concern is more with the looking-forward in general. It was br= ought up a while back (and on the PR) of the problems associated with being= able to handle a null-return from error, as compared to a null that is hon= estly set. The idea that array-access on null just be ignored. I'm not su= re if this would be seen as the more acceptable implementation which would = remove the need to look-ahead in oplines, as a NULL (error) result would sa= fely be ignored. Thanks -- Dave --_000_BY2PR0201MB17844B23AC958588BF147676BFE50BY2PR0201MB1784_--