Skip to content

[libc++] Fix <charconv> not exporting std::errc #146268

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
Jun 30, 2025

Conversation

philnik777
Copy link
Contributor

<charconv> doesn't properly export std::errc with locales disabled, which causes the CI to fail. This fixed the modulemap to let from_chars_result export std::errc, like it's supposed to do.

@EricWF EricWF marked this pull request as ready for review June 29, 2025 14:38
@EricWF EricWF requested a review from a team as a code owner June 29, 2025 14:38
@EricWF
Copy link
Member

EricWF commented Jun 29, 2025

LGTM (I came up with the same fix: #146269)
Please also take a look at this fix for a recently introduced failure (#146240 )

@llvmbot llvmbot added the libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi. label Jun 29, 2025
@llvmbot
Copy link
Member

llvmbot commented Jun 29, 2025

@llvm/pr-subscribers-libcxx

Author: Nikolas Klauser (philnik777)

Changes

&lt;charconv&gt; doesn't properly export std::errc with locales disabled, which causes the CI to fail. This fixed the modulemap to let from_chars_result export std::errc, like it's supposed to do.


Full diff: https://github.com/llvm/llvm-project/pull/146268.diff

1 Files Affected:

  • (modified) libcxx/include/module.modulemap.in (+4-1)
diff --git a/libcxx/include/module.modulemap.in b/libcxx/include/module.modulemap.in
index f878e15d70b1a..b00a8ebd54623 100644
--- a/libcxx/include/module.modulemap.in
+++ b/libcxx/include/module.modulemap.in
@@ -934,7 +934,10 @@ module std [system] {
     module chars_format               { header "__charconv/chars_format.h" }
     module from_chars_floating_point  { header "__charconv/from_chars_floating_point.h" }
     module from_chars_integral        { header "__charconv/from_chars_integral.h" }
-    module from_chars_result          { header "__charconv/from_chars_result.h" }
+    module from_chars_result          {
+      header "__charconv/from_chars_result.h"
+      export std.system_error.errc
+    }
     module tables                     { header "__charconv/tables.h" }
     module to_chars                   { header "__charconv/to_chars.h" }
     module to_chars_base_10           { header "__charconv/to_chars_base_10.h" }

@philnik777 philnik777 merged commit e0864b5 into llvm:main Jun 30, 2025
126 of 137 checks passed
@philnik777 philnik777 deleted the fix_charconv_errc branch June 30, 2025 08:06
rlavaee pushed a commit to rlavaee/llvm-project that referenced this pull request Jul 1, 2025
`<charconv>` doesn't properly export `std::errc` with locales disabled,
which causes the CI to fail. This fixed the modulemap to let
`from_chars_result` export `std::errc`, like it's supposed to do.
rlavaee pushed a commit to rlavaee/llvm-project that referenced this pull request Jul 1, 2025
`<charconv>` doesn't properly export `std::errc` with locales disabled,
which causes the CI to fail. This fixed the modulemap to let
`from_chars_result` export `std::errc`, like it's supposed to do.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
libc++ libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants