This is an archive of the discontinued LLVM Phabricator instance.

[libc++][CI][AIX] modify the equivalence classes of regex_match for locale "cs_CZ.ISO8859-2"
AbandonedPublic

Authored by DiggerLin on May 31 2022, 8:22 AM.

Details

Reviewers
Mordante
daltenty
hubert.reinterpretcast
Group Reviewers
Restricted Project
Summary
  1. AIX supports character equivalence classes. What the contents of the class are depends on the locale and the standards do not specify any locale other than C/POSIX.
  2. add if define(_AIX) to exclude "regex_match do not support Collating Elements: [[.ch.]] for wchar_t" and need further investigation.

Diff Detail

Event Timeline

DiggerLin created this revision.May 31 2022, 8:22 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 31 2022, 8:22 AM
DiggerLin requested review of this revision.May 31 2022, 8:22 AM
Herald added a project: Restricted Project. · View Herald TranscriptMay 31 2022, 8:22 AM
Herald added 1 blocking reviewer(s): Restricted Project. · View Herald Transcript
ldionne added inline comments.
libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
39–40

Even after reading the comment, I don't really understand why it needs to be [=m=] on AIX and [=M=] elsewhere. Can you explain?

Mordante requested changes to this revision.Sep 11 2023, 10:19 AM

We're moving to GitHub PRs and we like to clean up our review queue. Are you still interested in working on this patch? If not please abandon it.

This revision now requires changes to proceed.Sep 11 2023, 10:19 AM
DiggerLin marked an inline comment as done.Sep 20 2023, 11:13 AM
DiggerLin added inline comments.
libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
39–40

in the C/POSIX , it define "An equivalence class includes both the lowercase and uppercase versions of a character in the class."

https://www.datafix.com.au/BASHing/2020-06-17.html#:~:text=An%20equivalence%20class%20includes%20both,a%20character%20in%20the%20class.&text=As%20it%20says%20in%20the,range%20expression%20produces%20unspecified%20results.

so [=m=] and [=M=] will has the same set of characters in the C/POSIX .

but in AIX, the specific not define "the [=m=] and [=M=] will has the same set of characters ."

DiggerLin requested review of this revision.Sep 20 2023, 11:13 AM
DiggerLin marked an inline comment as done.
DiggerLin added inline comments.Sep 20 2023, 11:49 AM
libcxx/test/std/re/re.alg/re.alg.match/basic.locale.pass.cpp
39–40
DiggerLin planned changes to this revision.Oct 5 2023, 12:02 PM
DiggerLin abandoned this revision.Oct 16 2023, 11:27 AM