Annotation of embedaddon/php/Zend/tests/bug30828.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Bug #30828 (debug_backtrace() reports incorrect class in overridden methods)
        !             3: --FILE--
        !             4: <?php
        !             5: class A {
        !             6:        function __construct() {
        !             7:                debug_print_backtrace();
        !             8:                $bt = debug_backtrace();
        !             9:                foreach ($bt as $t) {
        !            10:                        print $t['class'].$t['type'].$t['function']."\n";
        !            11:                }
        !            12:        }
        !            13: 
        !            14:        function foo() {
        !            15:                debug_print_backtrace();
        !            16:                $bt = debug_backtrace();
        !            17:                foreach ($bt as $t) {
        !            18:                         print $t['class'].$t['type'].$t['function']."\n";
        !            19:                }
        !            20:        }
        !            21: 
        !            22:        static function bar() {
        !            23:                debug_print_backtrace();
        !            24:                $bt = debug_backtrace();
        !            25:                foreach ($bt as $t) {
        !            26:                        print $t['class'].$t['type'].$t['function']."\n";
        !            27:                }
        !            28:        }
        !            29: }
        !            30: 
        !            31: class B extends A {
        !            32:        function __construct() {
        !            33:                parent::__construct();
        !            34:        }
        !            35: 
        !            36:        function foo() {
        !            37:                parent::foo();
        !            38:        }
        !            39: 
        !            40:        static function bar() {
        !            41:                parent::bar();
        !            42:        }
        !            43: }
        !            44: 
        !            45: $b = new B();
        !            46: $b->foo();
        !            47: B::bar();
        !            48: ?>
        !            49: --EXPECTF--
        !            50: #0  A->__construct() called at [%sbug30828.php:30]
        !            51: #1  B->__construct() called at [%sbug30828.php:42]
        !            52: A->__construct
        !            53: B->__construct
        !            54: #0  A->foo() called at [%sbug30828.php:34]
        !            55: #1  B->foo() called at [%sbug30828.php:43]
        !            56: A->foo
        !            57: B->foo
        !            58: #0  A::bar() called at [%sbug30828.php:38]
        !            59: #1  B::bar() called at [%sbug30828.php:44]
        !            60: A::bar
        !            61: B::bar

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>