Change diagnostic error thrown for when string interpolations aren't closed by a parenthesis (#58882)

[Parse] Diagnose unclosed string interpolations
This commit is contained in:
Serena
2022-06-04 19:32:41 +03:00
committed by GitHub
parent 3b849e0177
commit e05f68c822
10 changed files with 81 additions and 24 deletions

View File

@@ -0,0 +1,33 @@
// RUN: %target-typecheck-verify-swift
let mid = "pete"
_ = "mid == \(pete"
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
let theGoat = "kanye \("
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
let equation1 = "2 + 2 = \(2 + 2"
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
let s = "\(x"; print(x)
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
let zzz = "\(x; print(x)
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
let goatedAlbum = "The Life Of \("Pablo"
// expected-error @-1 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @-2 {{unterminated string literal}}
// expected-error @+3 {{cannot find ')' to match opening '(' in string interpolation}}
// expected-error @+1 {{unterminated string literal}}
_ = """
\(
"""