1--TEST-- 2Calling constant() with a typed class constant 3--FILE-- 4<?php 5 6class Foo { 7 const object CONST1 = C; 8 const array CONST2 = C; 9} 10 11define("C", new stdClass()); 12 13var_dump(constant("FOO::CONST1")); 14 15try { 16 constant("FOO::CONST2"); 17} catch (TypeError $e) { 18 echo $e->getMessage() . "\n"; 19} 20 21?> 22--EXPECT-- 23object(stdClass)#1 (0) { 24} 25Cannot assign stdClass to class constant Foo::CONST2 of type array 26