1--TEST--
2ZE2 class type hinting
3--SKIPIF--
4<?php if (version_compare(zend_version(), '2.0.0-dev', '<')) die('skip ZendEngine 2 needed'); ?>
5--FILE--
6<?php
7
8interface Foo {
9	function a(Foo $foo);
10}
11
12interface Bar {
13	function b(Bar $bar);
14}
15
16class FooBar implements Foo, Bar {
17	function a(Foo $foo) {
18		// ...
19	}
20
21	function b(Bar $bar) {
22		// ...
23	}
24}
25
26class Blort {
27}
28
29$a = new FooBar;
30$b = new Blort;
31
32$a->a($b);
33$a->b($b);
34
35?>
36--EXPECTF--
37
38Catchable fatal error: Argument 1 passed to FooBar::a() must implement interface Foo, instance of Blort given, called in %s on line 27 and defined in %s on line 12
39