]> granicus.if.org Git - php/commitdiff
Fixed bug #43703 (Signature compatibility check broken)
authorDmitry Stogov <dmitry@php.net>
Wed, 9 Jan 2008 07:57:23 +0000 (07:57 +0000)
committerDmitry Stogov <dmitry@php.net>
Wed, 9 Jan 2008 07:57:23 +0000 (07:57 +0000)
NEWS
Zend/tests/bug43703.phpt [new file with mode: 0644]
Zend/zend_compile.c

diff --git a/NEWS b/NEWS
index e84d02d403c51c51d191bdde3feeeae527fb2bdc..29a955de76255a7bb5d745c7e3b147a4e30e110f 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -7,6 +7,7 @@ PHP                                                                        NEWS
 
 - Fixed bug #43793 (zlib filter is unable to auto-detect gzip/zlib file headers).
   (Greg)
+- Fixed bug #43703 (Signature compatibility check broken). (Dmitry)
 - Fixed bug #43663 (Extending PDO class with a __call() function doesn't work). 
   (David Soria Parra)
 - Fixed bug #43647 (Make FindFile use PATH_SEPARATOR instead of ";"). (Ilia)
diff --git a/Zend/tests/bug43703.phpt b/Zend/tests/bug43703.phpt
new file mode 100644 (file)
index 0000000..de4f8a8
--- /dev/null
@@ -0,0 +1,23 @@
+--TEST--
+Bug #43703 (Signature compatibility check broken)
+--FILE--
+<?php
+class JoinPoint
+{
+}
+
+abstract class Pointcut
+{
+    abstract public function evaluate(JoinPoint $joinPoint);
+}
+
+class Read extends Pointcut
+{
+    public function evaluate(Joinpoint $joinPoint)
+    {
+    }
+}
+?>
+DONE
+--EXPECT--
+DONE
index bd6f3cc2991ad5719510070e0cb610483304d1ec..3ba4cad32b82d02afc233de4f4ebe6cb422458ab 100644 (file)
@@ -2021,7 +2021,7 @@ static zend_bool zend_do_perform_implementation_check(zend_function *fe, zend_fu
                        return 0;
                }
                if (fe->common.arg_info[i].class_name
-                       && strcmp(fe->common.arg_info[i].class_name, proto->common.arg_info[i].class_name)!=0) {
+                       && strcasecmp(fe->common.arg_info[i].class_name, proto->common.arg_info[i].class_name)!=0) {
                        return 0;
                }
                if (fe->common.arg_info[i].array_type_hint != proto->common.arg_info[i].array_type_hint) {