[libc++] Granularize <type_traits> includes in <utility>

Reviewed By: Mordante, #libc

Spies: libcxx-commits

Differential Revision: https://reviews.llvm.org/D140426

NOKEYCHECK=True
GitOrigin-RevId: 947dfc95ca914385c181f24bbc1a16143c17b5f0
diff --git a/include/module.modulemap.in b/include/module.modulemap.in
index a19a3c4..467f758 100644
--- a/include/module.modulemap.in
+++ b/include/module.modulemap.in
@@ -1387,7 +1387,10 @@
     module is_abstract                         { private header "__type_traits/is_abstract.h" }
     module is_aggregate                        { private header "__type_traits/is_aggregate.h" }
     module is_allocator                        { private header "__type_traits/is_allocator.h" }
-    module is_arithmetic                       { private header "__type_traits/is_arithmetic.h" }
+    module is_arithmetic {
+      private header "__type_traits/is_arithmetic.h"
+      export integral_constant
+    }
     module is_array                            { private header "__type_traits/is_array.h" }
     module is_assignable                       { private header "__type_traits/is_assignable.h" }
     module is_base_of                          { private header "__type_traits/is_base_of.h" }