[libcxx] r250236 - Remove __config module to avoid #include cycle when libc headers include libc++'s <foo.h> headers.

Richard Smith via cfe-commits cfe-commits at lists.llvm.org
Tue Oct 13 15:13:33 PDT 2015


Author: rsmith
Date: Tue Oct 13 17:13:33 2015
New Revision: 250236

URL: http://llvm.org/viewvc/llvm-project?rev=250236&view=rev
Log:
Remove __config module to avoid #include cycle when libc headers include libc++'s <foo.h> headers.

Modified:
    libcxx/trunk/include/module.modulemap

Modified: libcxx/trunk/include/module.modulemap
URL: http://llvm.org/viewvc/llvm-project/libcxx/trunk/include/module.modulemap?rev=250236&r1=250235&r2=250236&view=diff
==============================================================================
--- libcxx/trunk/include/module.modulemap (original)
+++ libcxx/trunk/include/module.modulemap Tue Oct 13 17:13:33 2015
@@ -455,9 +455,13 @@ module std [system] {
     export *
   }
 
+  // FIXME: We don't have modules for the <foo.h> headers, because they might
+  // be included from the C library's headers, and that would create a #include
+  // cycle. For the same reason, we don't have a module for __config.
+  //module __config { header "__config" export * }
+
   // FIXME: These should be private.
   module __bit_reference { header "__bit_reference" export * }
-  module __config { header "__config" export * }
   module __debug { header "__debug" export * }
   module __functional_base { header "__functional_base" export * }
   module __hash_table { header "__hash_table" export * }




More information about the cfe-commits mailing list