[libcxx-commits] [libcxx] Fix missing module exports & broken locatization test. (PR #146269)

via libcxx-commits libcxx-commits at lists.llvm.org
Sun Jun 29 07:34:05 PDT 2025


https://github.com/EricWF created https://github.com/llvm/llvm-project/pull/146269

The mangled_name.pass.cpp test was checked in a few days ago, and this patch attempts to fix the build breakages it introduced.

The cryptic error from the breakage is:

When reproducing on my machine, I got additional diagnostics about missing exports for `errc`. The fix, I believe, is to re-export the errc header from the charconv module (or submodule).

>From 4ab794a4bc807101409aa681132ee407e51a8735 Mon Sep 17 00:00:00 2001
From: Eric Fiselier <eric at efcs.ca>
Date: Sun, 29 Jun 2025 10:29:26 -0400
Subject: [PATCH] Fix missing module exports & broken locatization test.

The mangled_name.pass.cpp test was checked in a few days ago,
and this patch attempts to fix the build breakages it introduced.

The cryptic error from the breakage is:

When reproducing on my machine, I got additional diagnostics about
missing exports for `errc`. The fix, I believe, is to re-export the errc
header from the charconv module (or submodule).
---
 libcxx/include/module.modulemap.in | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/libcxx/include/module.modulemap.in b/libcxx/include/module.modulemap.in
index f878e15d70b1a..2b3dfd2c9cced 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 // The result type contains 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" }



More information about the libcxx-commits mailing list