1--TEST--
2Test typed static property
3--FILE--
4<?php
5function &ref() {
6	static $a = 5;
7	return $a;
8}
9
10class Foo {
11	public static int $i;
12	public static string $s = "x";
13}
14
15var_dump(Foo::$i = 1);
16var_dump(Foo::$i);
17var_dump(Foo::$i = "1");
18var_dump(Foo::$i);
19
20var_dump(Foo::$s);
21var_dump(Foo::$s = Foo::$i++);
22var_dump(Foo::$s, Foo::$i);
23$a = 3;
24var_dump(Foo::$s = $a);
25var_dump(Foo::$s);
26var_dump(Foo::$i = "4");
27var_dump(Foo::$i);
28
29var_dump(Foo::$i = ref());
30var_dump(Foo::$i);
31var_dump(Foo::$s = ref());
32var_dump(Foo::$s);
33var_dump(ref());
34?>
35--EXPECT--
36int(1)
37int(1)
38int(1)
39int(1)
40string(1) "x"
41string(1) "1"
42string(1) "1"
43int(2)
44string(1) "3"
45string(1) "3"
46int(4)
47int(4)
48int(5)
49int(5)
50string(1) "5"
51string(1) "5"
52int(5)
53