Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:7473 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 97021 invoked by uid 1010); 2 Feb 2004 15:33:46 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 96911 invoked by uid 1007); 2 Feb 2004 15:33:45 -0000 Date: 2 Feb 2004 15:33:45 -0000 Message-ID: <20040202153345.96908.qmail@pb1.pair.com> To: internals@lists.php.net Organization: X-User-Real-E-Mail: your email address User-Agent: PHP News Reader v2.4.1 (CDSHEEN) Mime-Version: 1.0 Content-Type: text/plain; charset="big5" Content-Transfer-Encoding: 8bit X-HTTP-Posting-Host: unknown, unknown X-HTTP-Proxy-Server: 164.129.1.39 X-Posted-By: 64.21.80.2 Subject: PHP5: Exception not correctly thown with __get, __set and __toString From: stephane.drouard@st.com (Stephane Drouard) Hello, The following code does not work as expected: foo; print('[/test]'); // printed: bug ?> '/get' is not printed, so the throw statement is correctly executed, but '/test' is printed, so the exception is not correctly "propagated" to the caller. Note that the exception will be thrown later, either: * if the call to __get was not in a function: end of script, * if the call to __get was within a function: end of the function, except if antoher exception is thrown, but in that case the get exception is reported, not the newly thrown one. Same behaviour with __set and __toString. Apparently no problems with __construct, __destruct, __call and __clone. Regards, Stephane