Files
swift-mirror/test/Parse/confusables.swift
Hamish Knight 68075696eb [CS] A couple of minor improvements to operator diagnostics
- Simplify the fix locator when looking for a
fix already present in a pattern match, this
avoids us emitting both a diagnostic for the
argument conversion, and for a conformance failure.
- Include tuples in the diagnostic logic where
we emit a generic "operator cannot be applied"
diagnostic, as a conformance diagnostic is
unlikely to be helpful in that case.
2023-05-04 14:53:57 +01:00

29 lines
1.9 KiB
Swift
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// RUN: %target-typecheck-verify-swift
// expected-error @+4 {{type annotation missing in pattern}}
// expected-error @+3 {{cannot find operator '' in scope}}
// expected-error @+2 {{operator with postfix spacing cannot start a subexpression}}
// expected-error @+1 {{consecutive statements on a line must be separated by ';'}}
let number Int // expected-note {{operator '' (Two Dot Punctuation) looks similar to ':' (Colon); did you mean ':' (Colon)?}} {{11-14=:}}
// expected-warning @+3 2 {{integer literal is unused}}
// expected-error @+2 {{invalid character in source file}}
// expected-error @+1 {{consecutive statements on a line must be separated by ';'}}
5 5 // expected-note {{unicode character '' (Figure Dash) looks similar to '-' (Hyphen Minus); did you mean to use '-' (Hyphen Minus)?}} {{3-6=-}}
// expected-error @+3 {{cannot convert value of type '(Bool, _)' to expected condition type 'Bool'}}
// expected-error @+2 {{cannot find '' in scope}}
// expected-error @+1 {{expected ',' separator}}
if (true false) {} // expected-note {{identifier '' contains possibly confused characters; did you mean to use '&&&'?}} {{10-19=&&&}}
// expected-error @+3 {{invalid character in source file}}
// expected-error @+2 {{expected ',' separator}}
// expected-error @+1 {{binary operator '==' cannot be applied to operands of type '(Int, Int)' and 'Int'}}
if (5 5) == 0 {} // expected-note {{unicode character '' (Figure Dash) looks similar to '-' (Hyphen Minus); did you mean to use '-' (Hyphen Minus)?}} {{7-10=-}}
// GREEK QUESTION MARK (which looks like a semicolon)
print("A"); print("B")
// expected-error@-1 2{{consecutive statements on a line must be separated by ';'}}
// expected-error@-2 {{cannot find ';' in scope}}
// expected-note@-3 {{identifier ';' (Greek Question Mark) looks similar to ';' (Semicolon); did you mean ';' (Semicolon)?}} {{11-13=;}}