summaryrefslogtreecommitdiff
path: root/Zend/tests/ns_072.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'Zend/tests/ns_072.phpt')
-rw-r--r--Zend/tests/ns_072.phpt33
1 files changed, 33 insertions, 0 deletions
diff --git a/Zend/tests/ns_072.phpt b/Zend/tests/ns_072.phpt
new file mode 100644
index 0000000000..b6f89a2cf7
--- /dev/null
+++ b/Zend/tests/ns_072.phpt
@@ -0,0 +1,33 @@
+--TEST--
+Testing parameter type-hinted with interface
+--FILE--
+<?php
+
+namespace foo;
+
+interface foo {
+
+}
+
+class bar {
+ public function __construct(foo $x = NULL) {
+ var_dump($x);
+ }
+}
+
+class test implements foo {
+
+}
+
+
+new bar(new test);
+new bar(null);
+new bar(new stdclass);
+
+?>
+--EXPECTF--
+object(foo::test)#%d (0) {
+}
+NULL
+
+Catchable fatal error: Argument 1 passed to foo::bar::__construct() must implement interface foo::foo, instance of stdClass given, called in %s on line %d and defined in %s on line %d