mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
Defines the %target-playground-build-run-swift macro in the local lit config for PlaygroundTransform which contains all the boilerplate code used by most PlaygroundTransform tests: * Build a PlaygroundSupport module * Build the test source into an executable, linking PlaygroundSupport * Codesign and run the executable
59 lines
2.7 KiB
Swift
59 lines
2.7 KiB
Swift
// -playground
|
|
// RUN: %target-playground-build-run-swift(-swift-version 5 -Xfrontend -playground -Xfrontend -debugger-support) | %FileCheck %s
|
|
// RUN: %target-playground-build-run-swift(-swift-version 6 -Xfrontend -playground -Xfrontend -debugger-support) | %FileCheck %s
|
|
//
|
|
// -pc-macro -playground
|
|
// RUN: %target-playground-build-run-swift(-swift-version 5 -Xfrontend -pc-macro -Xfrontend -playground -Xfrontend -debugger-support) | %FileCheck %s
|
|
// RUN: %target-playground-build-run-swift(-swift-version 6 -Xfrontend -pc-macro -Xfrontend -playground -Xfrontend -debugger-support) | %FileCheck %s
|
|
//
|
|
// REQUIRES: executable_test
|
|
|
|
import PlaygroundSupport
|
|
|
|
// Both implicitly named and explicitly named parameters are logged.
|
|
let foo = [1, 2, 3, 4, 5].filter { $0 % 2 == 1 }.map { x in "\(x)" }
|
|
|
|
// Unnamed parameters do are not logged.
|
|
["A", "B", "C"].map { _ in 1 }
|
|
|
|
// CHECK: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[$0='1']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='true']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[$0='2']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='false']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[$0='3']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='true']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[$0='4']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='false']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[$0='5']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='true']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[x='1']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='1']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[x='3']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='3']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_entry
|
|
// CHECK-NEXT: {{.*}} __builtin_log[x='5']
|
|
// CHECK-NEXT: {{.*}} __builtin_log[='5']
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log_scope_exit
|
|
// CHECK-NEXT: {{.*}} __builtin_log[foo='["1", "3", "5"]'] |