[libcxx-commits] [libcxx] 9200ade - [libc++] Narrow the exports for common_type (#111681)

via libcxx-commits libcxx-commits at lists.llvm.org
Wed Oct 9 11:58:17 PDT 2024


Author: Louis Dionne
Date: 2024-10-09T14:58:13-04:00
New Revision: 9200adee266b5bfaa468c5ce2715ed9794e1a7a8

URL: https://github.com/llvm/llvm-project/commit/9200adee266b5bfaa468c5ce2715ed9794e1a7a8
DIFF: https://github.com/llvm/llvm-project/commit/9200adee266b5bfaa468c5ce2715ed9794e1a7a8.diff

LOG: [libc++] Narrow the exports for common_type (#111681)

Based on a comment in #99473, it seems like `export *` may be overkill.

Added: 
    

Modified: 
    libcxx/include/module.modulemap

Removed: 
    


################################################################################
diff  --git a/libcxx/include/module.modulemap b/libcxx/include/module.modulemap
index 22a1313498e73e..3ea91274a9cc9a 100644
--- a/libcxx/include/module.modulemap
+++ b/libcxx/include/module.modulemap
@@ -73,9 +73,9 @@ module std_core [system] {
     module common_reference                           { header "__type_traits/common_reference.h" }
     module common_type {
       header "__type_traits/common_type.h"
-      // We need to export everything from this module because common_type inherits from __builtin_common_type,
-      // which needs to be re-exported.
-      export *
+      // We need to export those because common_type inherits from either of those based on __builtin_common_type.
+      export std_core.type_traits.type_identity
+      export std_core.utility_core.empty
     }
     module conditional                                { header "__type_traits/conditional.h" }
     module conjunction                                { header "__type_traits/conjunction.h" }


        


More information about the libcxx-commits mailing list