1--TEST--
2Using an integer as a static property name
3--FILE--
4<?php
5
6class Foo {
7    public static $bar = 42;
8}
9
10$n = 42;
11
12${42} = 24;
13var_dump(${42});
14var_dump(${(int) 42});
15var_dump(${(int) $n});
16
17try {
18    var_dump(Foo::${42});
19} catch (Error $e) {
20    echo $e->getMessage(), "\n";
21}
22
23try {
24    var_dump(Foo::${(int) 42});
25} catch (Error $e) {
26    echo $e->getMessage(), "\n";
27}
28
29try {
30    var_dump(Foo::${(int) $n});
31} catch (Error $e) {
32    echo $e->getMessage(), "\n";
33}
34
35?>
36--EXPECT--
37int(24)
38int(24)
39int(24)
40Access to undeclared static property Foo::$42
41Access to undeclared static property Foo::$42
42Access to undeclared static property Foo::$42
43