On 17.09.2017 at 14:37, Rowan Collins wrote: > That makes much more sense, but doesn't answer the other question, of if > there's a working definition of what we mean by "case insensitive".
For case-insensitive constants zend_register_constant() uses zend_str_tolower_copy() which uses zend_tolower_ascii() which looks up in tolower_map: <https://github.com/php/php-src/blob/php-7.0.23/Zend/zend_operators.c#L46-L63>. As the name already says, this is a simple ASCII lower case mapping (A-Z are mapped to a-z; all others map to themselves). So only identifiers consisting solely of ASCII characters can actually be case-insensitive. I presume that this map is also used for other case-insensitive identifiers. -- Christoph M. Becker -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php