summaryrefslogtreecommitdiff
path: root/Zend/tests
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2021-01-05 13:04:00 +0100
committerNikita Popov <nikita.ppv@gmail.com>2021-01-05 13:04:00 +0100
commit5c3a3dd2aa789e6f34899220fb0e3e3145622b93 (patch)
treecf2849d156698b7fa4ac3f946b3e38c9040b47ef /Zend/tests
parentd29d3a4bf69f0122b40ebafa376e2f34b20002f6 (diff)
parentdd335359e950e52dd5e679da05b5c1f4084e5869 (diff)
downloadphp-git-5c3a3dd2aa789e6f34899220fb0e3e3145622b93.tar.gz
Merge branch 'PHP-8.0'
* PHP-8.0: Fix infinite recursion in unlinked_instanceof
Diffstat (limited to 'Zend/tests')
-rw-r--r--Zend/tests/type_declarations/variance/infinite_recursion.phpt17
1 files changed, 17 insertions, 0 deletions
diff --git a/Zend/tests/type_declarations/variance/infinite_recursion.phpt b/Zend/tests/type_declarations/variance/infinite_recursion.phpt
new file mode 100644
index 0000000000..6eab6ff7a5
--- /dev/null
+++ b/Zend/tests/type_declarations/variance/infinite_recursion.phpt
@@ -0,0 +1,17 @@
+--TEST--
+Infinite recursion in unlinked_instanceof()
+--FILE--
+<?php
+interface I {}
+spl_autoload_register(function() {
+ class X {
+ function test(): I {}
+ }
+ class Y extends X {
+ function test(): C {}
+ }
+});
+class C extends Z implements C {}
+?>
+--EXPECTF--
+Fatal error: Declaration of Y::test(): C must be compatible with X::test(): I in %s on line %d