Skip to content

Commit 419baee

Browse files
[tests] Make SR-2705 regression tests SIL tests to ensure we pick the correct overload
1 parent 7c92f7d commit 419baee

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

test/Constraints/sr2705.swift

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,35 +1,43 @@
1-
// RUN: %target-typecheck-verify-swift
1+
// RUN: %target-swift-emit-silgen %s -verify | %FileCheck %s
22

33
func f<T>(_: () -> T) {}
44
func f<T>(_: @autoclosure () -> T) {}
55

6+
// CHECK: function_ref @$s6sr27051fyyxyXElF
67
f { } // OK
78

89
func f1<T>(_: () -> T, _: () -> T) {}
910
func f1<T>(_: @autoclosure () -> T, _: @autoclosure () -> T) {}
1011

12+
// CHECK: function_ref @$s6sr27052f1yyxyXE_xyXEtlF
1113
f1({}, {}) // OK
1214

1315
func f2<T>(_: () -> T, _: () -> T) { }
1416
func f2<T>(_: () -> T, _: @autoclosure () -> T) { }
1517

18+
// CHECK: function_ref @$s6sr27052f2yyxyXE_xyXEtlF
1619
f2({}, {}) // OK
1720

1821
func f3(_: () -> Int) {}
1922
func f3(_: @autoclosure () -> Int) {}
2023

24+
// CHECK: function_ref @$s6sr27052f3yySiyXEF
2125
f3 { 0 } // OK
2226

2327
func autoclosure(f: () -> Int) { }
2428
func autoclosure(f: @autoclosure () -> Int) { }
2529
func autoclosure(f: Int) { }
2630

31+
// CHECK: function_ref @$s6sr270511autoclosure1fySiyXE_tF
2732
autoclosure(f: { 0 }) // OK
33+
34+
// CHECK: function_ref @$s6sr27052fnyySiyXEF
2835
let _ = autoclosure as (() -> (Int)) -> () // OK
2936

3037
func test(_: (@autoclosure () -> Int) -> Void) {}
3138
func test(_: (() -> Int) -> Void) {}
3239

3340
func fn(_: () -> Int) {}
3441

42+
// CHECK: function_ref @$s6sr27054testyyySiyXEXEF
3543
test(fn) // OK

0 commit comments

Comments
 (0)