]> granicus.if.org Git - php/commitdiff
Fix bug #55407
authorNiklas Keller <me@kelunik.com>
Mon, 29 May 2017 05:28:21 +0000 (07:28 +0200)
committerNikita Popov <nikita.ppv@gmail.com>
Fri, 2 Jun 2017 22:11:03 +0000 (00:11 +0200)
This reverts commit b148c50f4864684aa9a6c6483cc309a7f2badbb5 and
reintroduces the fix for bug #55407.

With https://wiki.php.net/rfc/parameter-no-type-variance being
implemented now, it's no longer a BC break.

NEWS
ext/date/php_date.c
ext/date/tests/bug55407.phpt

diff --git a/NEWS b/NEWS
index 37fa8ace27e7eae79ad85a4a657cb7c78d11c6a3..7c75a2566ead7476bd01ddf50538df60e9fd9191 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -64,6 +64,8 @@ PHP                                                                        NEWS
   . Fix integer overflows (Joshua Rogers)
 
 - Date:
+  . Fixed bug #55407 (Impossible to prototype DateTime::createFromFormat).
+    (kelunik)
   . Fixed bug #69587 (DateInterval properties and isset). (jhdxr)
   . Fixed bug #74404 (Wrong reflection on DateTimeZone::getTransitions).
     (krakjoe)
@@ -71,7 +73,6 @@ PHP                                                                        NEWS
   . Fixed bug #74639 (implement clone for DatePeriod and DateInterval).
     (andrewnester)
 
-
 - Dba:
   . Fixed bug #72885 (flatfile: dba_fetch() fails to read replaced entry).
     (Anatol)
index 0e6f0544f7be2fed761fe75baafbb012f5792e04..ac08f361ad9d2748b59e05a36beec70e2c63194e 100644 (file)
@@ -167,7 +167,7 @@ ZEND_END_ARG_INFO()
 ZEND_BEGIN_ARG_INFO_EX(arginfo_date_create_from_format, 0, 0, 2)
        ZEND_ARG_INFO(0, format)
        ZEND_ARG_INFO(0, time)
-       ZEND_ARG_INFO(0, object)
+       ZEND_ARG_OBJ_INFO(0, object, DateTimeZone, 1)
 ZEND_END_ARG_INFO()
 
 ZEND_BEGIN_ARG_INFO_EX(arginfo_date_parse, 0, 0, 1)
index 925640554a515434b70513040826df2280fadc29..7180d2f37f5a8d15b0e6b61f613c315a3e7e3fe9 100644 (file)
@@ -2,13 +2,11 @@
 Bug #55407 (Impossible to prototype DateTime::createFromFormat)
 --INI--
 error_reporting=-1
---XFAIL--
-Bug #55407
 --FILE--
 <?php namespace melt\core;
 
 class DateTime extends \DateTime {
-    public static function createFromFormat($format, $time, DateTimeZone $timezone = null) {
+    public static function createFromFormat($format, $time, \DateTimeZone $timezone = null) {
         return new DateTime(parent::createFromFormat($format, $time, $timezone));
     }
 }