Revision ac4b68fbf45853ba4b9e327cb42f93f42a8fa252 authored by Ellie Shin on 17 March 2023, 04:14:20 UTC, committed by Ellie Shin on 17 March 2023, 04:14:20 UTC
1 parent f2c68fb
Raw File
callexpr.swift
// RUN: %target-swift-frontend %s -g -emit-ir -o - | %FileCheck %s
// RUN: %target-swift-frontend %s -g -emit-ir -o - | %FileCheck --check-prefix=CHECK2 %s

func markUsed<T>(_ t: T) {}

func foo(_ a : Int64, _ b : Int64) -> Int64 {
  return a+b
}

// CHECK: call {{.*}}foo{{.*}}, !dbg ![[ARG1:.*]]
// CHECK: call {{.*}}foo{{.*}}, !dbg ![[ARG2:.*]]
// CHECK: call {{.*}}foo{{.*}}, !dbg ![[OUTER:.*]]
let r = foo(
            foo(1, 23), // CHECK: ![[ARG1]] = !DILocation(line: [[@LINE]],
            foo(2, 42)  // CHECK: ![[ARG2]] = !DILocation(line: [[@LINE]],
           )            // CHECK: ![[OUTER]] = !DILocation(line: [[@LINE-3]],
markUsed(r)

struct MyType {}
func bar(x: MyType = MyType()) {}

// CHECK2: call {{.*}}MyType{{.*}}, !dbg ![[DEFAULTARG:.*]]
// CHECK2: call {{.*}}bar{{.*}}, !dbg ![[BARCALL:.*]]
bar() // CHECK2: ![[DEFAULTARG]] = !DILocation(line: [[@LINE]], column: 4
      // CHECK2: ![[BARCALL]] = !DILocation(line: [[@LINE-1]], column: 1

back to top