ID: 42009 Updated by: [EMAIL PROTECTED] Reported By: robin_fernandes at uk dot ibm dot com -Status: Assigned +Status: Closed Bug Type: Scripting Engine problem Operating System: * PHP Version: 5CVS-2007-08-17 Assigned To: dmitry New Comment:
This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2007-08-17 20:13:25] [EMAIL PROTECTED] According to the commit log is_a() and is_subclass_of() should NOT call __autoload, in the same way as "instanceof" operator. But indeed the is_a.phpt does have check to see if __autoload was called and expects it -> there's bug somewhere. Dmitry, please check this out. ------------------------------------------------------------------------ [2007-07-16 15:02:50] robin_fernandes at uk dot ibm dot com Description: ------------ This is either a minor mistake in a testcase description, or a bug in is_subclass_of(). The description of testcase http://lxr.php.net/source/ZendEngine2/tests/is_a.phpt states: "is_a() and is_subclass_of() shouldn't call __autoload". However, the expected output explicitly checks for __autoload() calls *in some cases* (lines 49 and 50). Either the testcase description (and perhaps documentation) should clarify in which circumstances is_subclass_of() does result in an invocation of __autoload(), or is_subclass_of() should be fixed. Below is a simplified testcase illustrating a case where is_subclass_of() does invoke __autoload(). Reproduce code: --------------- <?php function __autoload($name) { echo("AUTOLOAD '$name'\n"); } Class Def {} var_dump(is_subclass_of("Def", "Undef")); ?> Expected result: ---------------- bool(false) Actual result: -------------- AUTOLOAD 'Undef' bool(false) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=42009&edit=1