ID:               29716
 Updated by:       [EMAIL PROTECTED]
 Reported By:      alan at akbkhome dot com
-Status:           Open
+Status:           Assigned
 Bug Type:         Zend Engine 2 problem
 Operating System: all
 PHP Version:      5.0.1
-Assigned To:      
+Assigned To:      helly
 New Comment:

Marcus breaks it, marcus should fix it :)
Also, can you please add a test case for this?

thanks


Previous Comments:
------------------------------------------------------------------------

[2004-08-17 06:21:19] [EMAIL PROTECTED]

Relivant change
http://cvs.php.net/diff.php/ZendEngine2/zend_compile.c?ws=0&r1=1.567&r2=1.567.2.1&ty=u

I suggest testing for > 1, rather than != 2 on call, as that's the only
one who's API changed in PHP4->5


------------------------------------------------------------------------

[2004-08-17 06:01:38] alan at akbkhome dot com

Description:
------------
something changed in 5.0.1 that breaks conditional class definitions.
hence breaking code that worked ok on php4 & php5.0.0

Reproduce code:
---------------
<?php
if (true) { // this is the correct definition. (used for php5)

    class Overloaded {
        function __call($method,$args) {
           
        }
    }
    
    
} else { // this is used for php4
                                                                       
       
    class Overloaded {
        function __call($method,$args,&$return) {

        }
    }
 }                                                                     
         
?>

Expected result:
----------------
nothing


Actual result:
--------------
Content-type: text/html
X-Powered-By: PHP/5.0.1
 
<br />
<b>Fatal error</b>:  Method DB_DataObject_Overload::__call() must take
exactly 2 arguments in <b>/usr/src/php/php-5.0.1/test1.php</b> on line
<b>16</b><br />
a


------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=29716&edit=1

Reply via email to