Files
swift-mirror/test/Interop/Cxx/stdlib/Inputs/module.modulemap
Egor Zhdan 16e7cbeafa [cxx-interop] Modularize __msvc_bit_utils on Windows
`__msvc_bit_utils.hpp` was added in a recent version of MSVC, and it is causing build errors for SwiftCompilerSources:
```
C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\numeric:598:12: error: function '_Select_countr_zero_impl<unsigned long long, (lambda at C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Tools\MSVC\14.39.33519\include\numeric:598:55)>' with deduced return type cannot be used before it is defined
    return _Select_countr_zero_impl<_Common_unsigned>([=](auto _Countr_zero_impl) {
```

This change references the `__msvc_bit_utils.hpp` header from the modulemap. Since we still need to support older versions of Visual Studio that do not provide `__msvc_bit_utils.hpp`, this also teaches ClangImporter to inject an empty header file named `__msvc_bit_utils.hpp` into the system include directory, unless it already exists.

rdar://137066642
2024-10-04 13:15:20 +01:00

66 lines
865 B
Plaintext

module StdNumeric {
header "std-numeric.h"
requires cplusplus
export *
}
module StdVector {
header "std-vector.h"
requires cplusplus
export *
}
module StdSpan {
header "std-span.h"
requires cplusplus
export *
}
module StdMap {
header "std-map.h"
requires cplusplus
export *
}
module StdOptional {
header "std-optional.h"
requires cplusplus
export *
}
module StdSet {
header "std-set.h"
requires cplusplus
export *
}
module StdString {
header "std-string.h"
requires cplusplus
export *
}
module StdPair {
header "std-pair.h"
requires cplusplus
export *
}
module MsvcUseVecIt {
header "msvc-std-vector-it.h"
requires cplusplus
export *
}
module StdUniquePtr {
header "std-unique-ptr.h"
requires cplusplus
export *
}
module StdFunction {
header "std-function.h"
requires cplusplus
export *
}