ID:               45571
 Updated by:       [EMAIL PROTECTED]
 Reported By:      robin_fernandes at uk dot ibm dot com
-Status:           Open
+Status:           Closed
 Bug Type:         Reflection related
 Operating System: Windows
 PHP Version:      5.3CVS-2008-07-20 (snap)
 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.

Hi Robin, thanks for the patch. ;)


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

[2008-07-20 15:59:04] robin_fernandes at uk dot ibm dot com

Description:
------------
A change was made in 5.3 so that ReflectionClass::export() does not
list private methods from superclasses (see http://bugs.php.net/37964).
However, the change was not applied for static methods.

Proposed patch to restore consistency: http://pastebin.ca/1077574 .


Reproduce code:
---------------
<?php
Class A { 
        private function f() {}
        private static function sf() {}
}

Class C extends A { }

ReflectionClass::export("C");
?>

Expected result:
----------------
Class [ <user> class C extends A ] {
  @@ %s 7-7

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [0] {
  }

  - Properties [0] {
  }

  - Methods [0] {
  }
}

Actual result:
--------------
Class [ <user> class C extends A ] {
  @@ %s 7-7

  - Constants [0] {
  }

  - Static properties [0] {
  }

  - Static methods [1] {
    Method [ <user, inherits A> static private method sf ] {
      @@ %s 4 - 4
    }
  }

  - Properties [0] {
  }

  - Methods [0] {
  }
}


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


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

Reply via email to