-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Better error for definition followed by keyword (#18752)
Fixes #18750
- Loading branch information
Showing
3 changed files
with
119 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:3:4 --------------------------------------------------------------------- | ||
3 |val do = 23 // error | ||
| ^ | ||
| an identifier expected, but 'do' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'do' as identifier, you may put it in backticks: `do`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:4:4 --------------------------------------------------------------------- | ||
4 |val if = 23 // error | ||
| ^ | ||
| an identifier expected, but 'if' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'if' as identifier, you may put it in backticks: `if`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:5:4 --------------------------------------------------------------------- | ||
5 |val val = 23 // error | ||
| ^ | ||
| an identifier expected, but 'val' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'val' as identifier, you may put it in backticks: `val`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:6:7 --------------------------------------------------------------------- | ||
6 |val a, if = 23 // error | ||
| ^^ | ||
| an identifier expected, but 'if' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'if' as identifier, you may put it in backticks: `if`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:8:4 --------------------------------------------------------------------- | ||
8 |def do; // error | ||
| ^^ | ||
| an identifier expected, but 'do' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'do' as identifier, you may put it in backticks: `do`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:9:4 --------------------------------------------------------------------- | ||
9 |var do; // error | ||
| ^ | ||
| an identifier expected, but 'do' found | ||
|--------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'do' as identifier, you may put it in backticks: `do`. | ||
--------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:10:6 -------------------------------------------------------------------- | ||
10 |class do; // error | ||
| ^^ | ||
| an identifier expected, but 'do' found | ||
|-------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'do' as identifier, you may put it in backticks: `do`. | ||
-------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:11:7 -------------------------------------------------------------------- | ||
11 |object if; // error // error | ||
| ^^ | ||
| an identifier expected, but 'if' found | ||
|-------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'if' as identifier, you may put it in backticks: `if`. | ||
-------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:12:6 -------------------------------------------------------------------- | ||
12 |trait else; // error | ||
| ^^^^ | ||
| an identifier expected, but 'else' found | ||
|-------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'else' as identifier, you may put it in backticks: `else`. | ||
-------------------------------------------------------------------------------------------------------------------- | ||
-- [E040] Syntax Error: tests/neg/i18750.scala:13:5 -------------------------------------------------------------------- | ||
13 |type for; // error | ||
| ^^^ | ||
| an identifier expected, but 'for' found | ||
|-------------------------------------------------------------------------------------------------------------------- | ||
| Explanation (enabled by `-explain`) | ||
|- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - | ||
| | ||
| If you want to use 'for' as identifier, you may put it in backticks: `for`. | ||
-------------------------------------------------------------------------------------------------------------------- | ||
-- [E161] Naming Error: tests/neg/i18750.scala:11:0 -------------------------------------------------------------------- | ||
11 |object if; // error // error | ||
|^ | ||
|<error> clashes with class <error> in tests/neg/i18750.scala; the two must be defined together |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,13 @@ | ||
//> using options -explain | ||
|
||
val do = 23 // error | ||
val if = 23 // error | ||
val val = 23 // error | ||
val a, if = 23 // error | ||
|
||
def do; // error | ||
var do; // error | ||
class do; // error | ||
object if; // error // error | ||
trait else; // error | ||
type for; // error |