xref: /PHP-7.0/tests/lang/type_hints_001.phpt (revision 4ea1d8a9)
1--TEST--
2ZE2 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
8class Foo {
9}
10
11class Bar {
12}
13
14function type_hint_foo(Foo $a) {
15}
16
17$foo = new Foo;
18$bar = new Bar;
19
20type_hint_foo($foo);
21type_hint_foo($bar);
22
23?>
24--EXPECTF--
25
26Fatal error: Uncaught TypeError: Argument 1 passed to type_hint_foo() must be an instance of Foo, instance of Bar given, called in %s on line 16 and defined in %s:9
27Stack trace:
28#0 %s(%d): type_hint_foo(Object(Bar))
29#1 {main}
30  thrown in %s on line 9
31