[libcxx-commits] [libcxx] [libc++] Add __assertion_handler to the modulemap (PR #131031)

Louis Dionne via libcxx-commits libcxx-commits at lists.llvm.org
Wed Mar 19 06:43:54 PDT 2025


https://github.com/ldionne updated https://github.com/llvm/llvm-project/pull/131031

>From 755233dcabb0ad32e98b4fccab508fa5527d18de Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Wed, 12 Mar 2025 14:58:29 -0600
Subject: [PATCH 1/2] [libc++] Add __assertion_handler to the modulemap

That header is generated via CMake, but it is nonetheless present
in the final installation, so it should be covered by the modulemap.

rdar://131418726
---
 libcxx/include/module.modulemap | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/libcxx/include/module.modulemap b/libcxx/include/module.modulemap
index 43072aa0fb0f1..cfe9917a57ecc 100644
--- a/libcxx/include/module.modulemap
+++ b/libcxx/include/module.modulemap
@@ -2285,6 +2285,9 @@ module std [system] {
     header "__assert"
     export *
   }
+  module assertion_handler {
+    header "__assertion_handler" // Generated via CMake
+  }
 
   module undef_macros {
     textual header "__undef_macros"

>From e1506d94bcdcc035ae289a29e30ad206c8ff8e56 Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2 at gmail.com>
Date: Wed, 19 Mar 2025 09:43:44 -0400
Subject: [PATCH 2/2] Make textual

---
 libcxx/include/module.modulemap | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libcxx/include/module.modulemap b/libcxx/include/module.modulemap
index cfe9917a57ecc..37a5c9aa7a36d 100644
--- a/libcxx/include/module.modulemap
+++ b/libcxx/include/module.modulemap
@@ -2286,7 +2286,9 @@ module std [system] {
     export *
   }
   module assertion_handler {
-    header "__assertion_handler" // Generated via CMake
+    // This header is generated via CMake. It must be textual because it may be vendor-provided,
+    // which means that we can't know what to re-export (if anything) in advance.
+    textual header "__assertion_handler"
   }
 
   module undef_macros {



More information about the libcxx-commits mailing list