@@ -4633,8 +4633,6 @@ void UnicodeSetTest::TestToPatternOutput() {
46334633 {u" [ - - ]" , uR"( [\-])" },
46344634 {u" [ - _ - ]" , uR"( [\-_])" },
46354635 {u" [ - + - ]" , uR"( [+\-])" },
4636- {u" [ { Z e i c h e n k e t t e } Zeichenmenge ]" , uR"( [Zceg-imn{\ Z\ e\ i\ c\ h\ e\ n\ k\ e\ t\ t\ e\ }])" },
4637- {uR"( [ { \x5A e i c h e n k e t t e } \x5Aeichenmenge ])" , uR"( [Zceg-imn{\ Z\ e\ i\ c\ h\ e\ n\ k\ e\ t\ t\ e\ }])" },
46384636 {u" [$d-za-c]" , uR"( [\$a-z])" },
46394637 {u" [a-c$d-z]" , uR"( [\$a-z])" },
46404638 {uR"( [\uFFFFa-z])" , uR"( [a-z\uFFFF])" },
@@ -4658,11 +4656,6 @@ void UnicodeSetTest::TestToPatternOutput() {
46584656 {u" [^[c]]" , uR"( [^[c]])" },
46594657 {uR"( [ ^ [ \u0000-b d-\U0010FFFF ] ])" , uR"( [^[^c]])" },
46604658 {u" [$[]]" , uR"( [\$[]])" },
4661- // Spaces are eliminated within a string-literal even when the syntax is preserved.
4662- {u" [ { Z e i c h e n k e t t e } [] Zeichenmenge ]" , uR"( [{\ Z\ e\ i\ c\ h\ e\ n\ k\ e\ t\ t\ e\ }[]Zeichenmenge])" },
4663- // Escapes are removed even when the syntax is preserved.
4664- {uR"( [ { \x5A e i c h e n k e t t e } [] \x5Aeichenmenge ])" ,
4665- uR"( [{\ Z\ e\ i\ c\ h\ e\ n\ k\ e\ t\ t\ e\ }[]Zeichenmenge])" },
46664659 // In ICU 78 and earlier, a named-element was a nested set, so it was preserved and
46674660 // caused the syntax to be preserved. Now it is treated like an escape.
46684661 {uR"( [ \N{LATIN CAPITAL LETTER Z}eichenmenge ])" , uR"( [Zceg-imn])" },
@@ -4744,6 +4737,13 @@ void UnicodeSetTest::TestParseErrors() {
47444737 // TODO(egg): Well-formed in Java, ill-formed in ICU4C in ICU 78 and earlier.
47454738 u" [a-{z}]" ,
47464739 u" [{a}-z]" ,
4740+ // Well-formed in ICU 78 and earlier (spaces ignored).
4741+ // In ICU 81 and later, the spaces will mean spaces.
4742+ // Ill-formed in ICU 79 and 80.
4743+ u" [ { Z e i c h e n k e t t e } Zeichenmenge ]" ,
4744+ uR"( [ { \x5A e i c h e n k e t t e } \x5Aeichenmenge ])" ,
4745+ u" [ { Z e i c h e n k e t t e } [] Zeichenmenge ]" ,
4746+ uR"( [ { \x5A e i c h e n k e t t e } [] \x5Aeichenmenge ])" ,
47474747 }) {
47484748 UErrorCode errorCode = U_ZERO_ERROR;
47494749 const UnicodeSet set (expression, errorCode);
0 commit comments