mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
When converting a C++ class template instantiation name into Swift, we previously didn't account for possible SIMD types. Those types were printed as `_`. This meant that e.g. `std::vector<simd::float3>` and `std::vector<simd::float4>` would get the same Swift name, causing compiler errors down the road. rdar://134214091
10 lines
560 B
Swift
10 lines
560 B
Swift
// RUN: %target-swift-ide-test -print-module -module-to-print=ClassTemplateWithSIMDParameter -I %S/Inputs -source-filename=x -cxx-interoperability-mode=upcoming-swift | %FileCheck %s
|
|
|
|
// REQUIRES: OS=macosx || OS=ios
|
|
|
|
// CHECK: typealias TemplatedSIMDUInt1 = Templated<CUnsignedInt>
|
|
// CHECK: typealias TemplatedSIMDUInt16 = Templated<SIMD16<CUnsignedInt>>
|
|
// CHECK: typealias TemplatedSIMDFloat3 = Templated<SIMD3<CFloat>>
|
|
// CHECK: typealias TemplatedSIMDFloat4 = Templated<SIMD4<CFloat>>
|
|
// CHECK: typealias TemplatedSIMDDouble8 = Templated<SIMD8<CDouble>>
|