Files
swift-mirror/test/swift-indent/main.swift.indent2.response
Hamish Knight f56b061407 [Parse] Check the SourceFile for #if evaluation
Remove the `EvaluateConditionals` flags from the
parser, and instead query the source file.

This commit also changes ParserUnit such that it
doesn't evaluate #if conditions by default, as
none of its clients appear to require it. The
only client that wasn't explicitly disabling #if
evaluation and is processing the resulting AST is
swift-indent, so this commit also adds a test to
ensure it continues to work correctly with #if
decls.
2020-03-02 14:12:37 -08:00

45 lines
891 B
Plaintext

// RUN: %swift-indent %s >%t.response
// RUN: diff -u %s.response %t.response
// RUN: %swift-indent -indent-width 2 %s >%t.response
// RUN: diff -u %s.indent2.response %t.response
// RUN: %swift-indent -use-tabs %s >%t.response
// RUN: diff -u %s.tabs.response %t.response
// RUN: %swift-indent -line-range 24:29 %s >%t.response
// RUN: diff -u %s.lines.response %t.response
// RUN: %swift-indent -indent-switch-case %s >%t.response
// RUN: diff -u %s.indentswitch.response %t.response
import Foundation
func collatz(n: Int, m: String?) {
switch m {
case .some(let s):
print(s)
case .none:
print("nothing")
default:
print("not possible")
break
}
var r: Int
if n%2 == 0 {
r = n/2
} else {
r = 3*n+1
}
print("Number: \(r)")
if r == 1 {
print("Reached one!")
} else {
collatz(r)
}
}
#if true
func foo() -> Int {
0
}
#else
1
#endif