[PHP] Add new PHP 8.1 keyword

Add PHP keyword 'readonly' (added in 8.1) to the list SWIG knows to
automatically rename.  This keyword is special in that PHP allows it to
be used as a function (or method) name.
This commit is contained in:
Olly Betts 2021-12-18 15:30:38 +13:00
commit 7d75e3eb7e
3 changed files with 28 additions and 0 deletions

View file

@ -8,6 +8,7 @@
%warnfilter(SWIGWARN_PARSE_KEYWORD) null;
%warnfilter(SWIGWARN_PARSE_KEYWORD) True;
%warnfilter(SWIGWARN_PARSE_KEYWORD) FALSE;
%warnfilter(SWIGWARN_PARSE_KEYWORD) ns::readonly;
#endif
%ignore prev::operator++;
@ -50,4 +51,17 @@
class FALSE
{
};
// PHP 8.1 made `readonly` a keyword, but (unlike any other keyword it seems)
// it may still be used as a function name.
namespace ns {
class readonly { };
}
class readonly_should_be_ok_as_method {
public:
bool readonly() const { return true; }
};
bool readonly() { return false; }
%}