This is an archive of the discontinued LLVM Phabricator instance.

[libc++] Fixes disabling wide character.
ClosedPublic

Authored by Mordante on Aug 17 2023, 9:56 AM.

Details

Reviewers
ldionne
philnik
Group Reviewers
Restricted Project
Commits
rG1eb90b9a4e8f: [libc++] Fixes disabling wide character.
Summary

While testing the std module with -DLIBCXX_ENABLE_WIDE_CHARACTERS=OFF
the build failed. These functions are not exported from the module since
they use wchar_t. Disable them in the headers too.

Diff Detail

Event Timeline

Mordante created this revision.Aug 17 2023, 9:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 17 2023, 9:56 AM
Mordante requested review of this revision.Aug 17 2023, 9:56 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 17 2023, 9:56 AM
Herald added a reviewer: Restricted Project. · View Herald Transcript
philnik requested changes to this revision.Aug 17 2023, 10:31 AM
philnik added a subscriber: philnik.

Maybe I'm missing something, but it looks to me like you are disabling too many symbols here.

libcxx/include/cstdlib
138–139

This doesn't seem to require wchar_t.

libcxx/include/iosfwd
124–126

This also doesn't use wchar_t.

This revision now requires changes to proceed.Aug 17 2023, 10:31 AM
Mordante marked 2 inline comments as done.Aug 19 2023, 4:22 AM
Mordante added inline comments.
libcxx/include/cstdlib
138–139

Good catch!

libcxx/include/iosfwd
124–126

This is strictly true, but I still think this should be disabled. It's clearly intended for wchar_t. The same is done for char8_t below.

Mordante updated this revision to Diff 551740.Aug 19 2023, 4:23 AM
Mordante marked 2 inline comments as done.

Addresses review comments.

philnik accepted this revision.Aug 19 2023, 8:13 AM
This revision is now accepted and ready to land.Aug 19 2023, 8:13 AM
This revision was automatically updated to reflect the committed changes.