Calling findPatternNoCase: with a String receiver and an element in the argument Array that is a Unicode16 will fail with an illegal pattern error.
This occurs when the argument is an instance of String (which only includes Characters with codePoints under 256), while the Unicode string argument has Characters with codePoints greater than 127 (i.e., Unicode16).
For example:
run
'après ski' asString findPatternNoCase: (Array with: ('après' asUnicodeString)) startingAt: 1
%
a ArgumentError occurred (error 2017), anArray( 'apr..s') is an illegal pattern for string comparisons.
login as SystemUser and execute:
run String removeSelector: #findPatternNoCase:startingAt: % commit
Last updated: 7/3/18