Нашел косяк в работе PHP с включенным XDebug

Krishna

Продался Java
Нашел косяк в работе PHP с включенным XDebug

Может кому-то интересно, может кто-то тему разовьёт до более общей ошибки.
Итак, php 5.2.6, XDebug 2.0.2, ось FreeBSD 7.0

PHP:
<?php

class A
{
public $x = 1;
}

class B
{
public function myMethod(A $y)
{
echo $y;
}
}

$z = new B();
$z->myMethod(123);
echo "And going and going...";
?>
С
#zend_extension=/usr/local/lib/php/20060613/xdebug.so
в php.ini

получаем:
Catchable fatal error: Argument 1 passed to B::myMethod() must be an instance of A, integer given, called in /var/www/dev1/html/test.php on line [пропущено...]
и более ничего не видим, как и ожидалось.

С раскомментированным в php.ini:
zend_extension=/usr/local/lib/php/20060613/xdebug.so
видим:
Catchable fatal error: Argument 1 passed to B::myMethod() must be an instance of A, integer given, called in /var/www/dev1/html/test.php on line [пропущено...]
123And going and going...
Учитывая, что, как выяснилось был неправильно был настроен error_reporting - я не увидел ошибки, зато получил неожиданное поведение скрипта... Думал я дурак, а оказалось лыжи не едут)

Создан баг репорт #0000391

-~{}~ 22.07.08 21:52:

Чёрт, ошибки не оттудова скопировал ))))
Ну, смысл ясен)
 
Сверху