diff --git a/Zend/tests/class_alias/gh16665_3.phpt b/Zend/tests/class_alias/gh16665_3.phpt new file mode 100644 index 0000000000000..038ab398dffb0 --- /dev/null +++ b/Zend/tests/class_alias/gh16665_3.phpt @@ -0,0 +1,8 @@ +--TEST-- +GH-16665 (\resource should not be usable) +--FILE-- + +--EXPECTF-- +Fatal error: Cannot use "resource" as a class alias as it is reserved in %s on line %d diff --git a/Zend/zend_compile.c b/Zend/zend_compile.c index 5eba2ec1366fa..bee25b6e6ea92 100644 --- a/Zend/zend_compile.c +++ b/Zend/zend_compile.c @@ -215,6 +215,7 @@ static const struct reserved_class_name reserved_class_names[] = { {ZEND_STRL("iterable")}, {ZEND_STRL("object")}, {ZEND_STRL("mixed")}, + {ZEND_STRL("resource")}, /* These are not usable as class names because they're proper tokens, * but they are here for class aliases. */ {ZEND_STRL("array")},