From c650e67c9007b50b591ed00eb15e03152c032348 Mon Sep 17 00:00:00 2001 From: Pierrick Charron Date: Thu, 7 Jul 2022 02:03:00 -0400 Subject: [PATCH] Fixed bug GH-8943 Reflection::getModifiersNames() with readonly modifier --- ext/reflection/php_reflection.c | 4 ++++ .../Reflection_getModifierNames_001.phpt | 23 +++++++++++++++++++ 2 files changed, 27 insertions(+) create mode 100644 ext/reflection/tests/Reflection_getModifierNames_001.phpt diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index bf408136cc5..7ce4878139d 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -1550,6 +1550,10 @@ ZEND_METHOD(Reflection, getModifierNames) if (modifiers & ZEND_ACC_STATIC) { add_next_index_stringl(return_value, "static", sizeof("static")-1); } + + if (modifiers & ZEND_ACC_READONLY) { + add_next_index_stringl(return_value, "readonly", sizeof("readonly")-1); + } } /* }}} */ diff --git a/ext/reflection/tests/Reflection_getModifierNames_001.phpt b/ext/reflection/tests/Reflection_getModifierNames_001.phpt new file mode 100644 index 00000000000..6506bce63b5 --- /dev/null +++ b/ext/reflection/tests/Reflection_getModifierNames_001.phpt @@ -0,0 +1,23 @@ +--TEST-- +Reflection::getModifierNames() basic +--FILE-- + +--EXPECT-- +private +protected,static +public,readonly +abstract +abstract,final +public,static,readonly