Denis Zharkov
4725dd3028
Implement recovery for incomplete expression before declaration
...
It's needed when declarations are parsed as a part of previous expression
(see tests)
Currently we apply this kind of recovery in a conservative way,
only when declaration starts at the next line, and while
the condition could be relaxed, there's no need to do this
#KT-4948 Fixed
#KT-7118 Fixed
2016-07-15 18:59:31 +03:00
Denis Zharkov
fcb870a303
Add EOL to EXPRESSION_FOLLOW recovery set
...
This change is used in further commits, but it's extracted
to emphasize that testData modifications are caused by this.
2016-07-15 18:27:00 +03:00
Denis Zharkov
3aa1a56cb9
Extend recovery set when expecting property accessor
...
#KT-12987 Fixed
2016-07-08 16:06:47 +03:00
Denis Zharkov
f1026935a0
Add recovery for properties without name
...
If property name is parsed on the next line and declaration is invalid
(no receiver/type/initializer), treat that name as it does not belong to property
#KT-12987 In Progress
2016-07-08 16:06:47 +03:00
Denis Zharkov
46f11a5ec4
Add val/var tokens in parameter name recovery set
...
Recovery after val/var everywhere beside value parameters works
properly without this change
#KT-7915 Fixed
2016-07-08 16:06:47 +03:00
Stanislav Erokhin
7c2825b397
KT-12623 Fixed ISE: Type parameter ... not found for public fun ...
...
#KT-12623 Fixed
Also EA-72653 fixed.
2016-06-23 02:03:24 +03:00
Denis Zharkov
20d1d12f3b
Revert "'yield' reserved as a keyword"
...
This reverts commit 434082cadb .
2016-06-08 18:53:16 +03:00
Denis Zharkov
329fb9d619
Introduce 'coroutine'/'suspend' modifiers
2016-06-08 18:53:16 +03:00
Alexander Udalov
1339286261
Drop undocumented absolute name specification feature with 'package.'
2016-06-01 19:30:03 +03:00
Alexander Udalov
b5388d6a43
Parse expressions on LHS of '::'
...
See https://github.com/Kotlin/KEEP/issues/5
2016-05-26 22:22:41 +03:00
Dmitry Petrov
ec94893189
KT-11588 Type aliases
...
Parse type aliases as top-level, member, and local declarations.
2016-05-20 14:17:24 +03:00
Nikolay Krasko
52cd7109c7
Use left bound element types to tight empty delegation contructor call to declaration
...
CONSTRUCTOR_DELEGATION_CALL and CONSTRUCTOR_DELEGATION_REFERENCE types were modified.
2016-05-12 17:25:19 +03:00
Dmitry Jemerov
d7b1526cd5
preserve leading indentation in KDoc code blocks
...
#KT-9933 Fixed
2016-05-06 22:11:38 +02:00
Alexander Udalov
4706d4eaea
Minor, restructure parsing test case for '::'
2016-04-19 18:28:24 +03:00
Dmitry Jemerov
01b0cfb552
don't parse lines starting with @ as KDoc tags if they're inside a Markdown code fence
...
#KT-11789 Fixed
2016-04-05 19:48:51 +02:00
Evgeny Gerashchenko
c242ad94fd
Minor. Syntax error cosmetics.
2016-01-29 01:00:47 +03:00
Evgeny Gerashchenko
0d79c65d73
KT-8275 Unterminated multi-line comment should be compilation error
...
#KT-8275 fixed
2016-01-29 01:00:47 +03:00
Valentin Kipyatkov
808c7453a4
Added test for 'typealias' being keyword
2016-01-19 19:31:44 +03:00
Valentin Kipyatkov
68853fecc3
Removed support for "typealias" declarations from the parser
...
#KT-10683 Fixed
2016-01-19 19:31:44 +03:00
Mikhail Glukhikh
b78d481bb1
delegate use-site targeted annotations: parser, front-end, codegen with some tests #KT-10502 Fixed
2016-01-19 11:38:41 +03:00
Pavel V. Talanov
b38fc7b3c1
Parse local interfaces in expression position
2015-12-29 15:57:00 +03:00
Dmitry Jemerov
8db3fb03f9
remove support for "package.foo.bar" syntax inside files
2015-12-14 13:22:54 +01:00
Alexey Tsvetkov
199827635f
Reserve 'typeof' as a keyword
2015-12-10 21:26:41 +03:00
Dmitry Jemerov
009e3f9cd7
rename PSI classes according to current terminology:
...
KtMultiDeclaration(Entry) -> KtDestructuringDeclaration(Entry)
KtFunctionLiteralExpression -> KtLambdaExpression
KtFunctionLiteralArgument -> KtLambdaArgument
KtDelegationSpecifierList -> KtSuperTypeList
KtDelegationSpecifier -> KtSuperTypeListEntry
KtDelegatorToSuperClass -> KtSuperTypeEntry
KtDelegatorToSuperCall -> KtSuperTypeCallEntry
KtDelegationByExpressionSpecifier ->KtDelegatedSuperTypeEntry
2015-12-10 16:15:13 +01:00
Dmitry Jemerov
18e343d405
Merge pull request #795 from mcgee/KT-10124
...
#KT-10124 Fixed
2015-12-09 15:28:31 +01:00
Andrey Breslav
434082cadb
'yield' reserved as a keyword
2015-12-09 17:10:30 +03:00
Anton Sukhonosenko
5bc70b3150
#KT-10124 Fixed
2015-12-02 20:03:13 +03:00
Andrey Breslav
8544a5ab5f
Remove "This" keyword
2015-11-30 19:36:33 +03:00
Andrey Breslav
aca355acdc
'...' reserved as a token
...
KT-9708 Ambiguous syntax for Double ranges: `.1...2` (triple dot)
#KT-9708 Fixed
2015-11-30 19:36:33 +03:00
Yan Zhulanow
a3ff3ffc45
Fix tests: "Placing function type parameters after the function name" error
2015-11-27 15:51:11 +03:00
Pavel V. Talanov
dbd49c37c1
Psi: Introduce KtScriptInitializer, a separate entity for script initializers which are quite a bit different from class initializers
2015-11-19 22:57:07 +03:00
Pavel V. Talanov
daa1a08213
Script refactoring, parser: wrap statements in script as if they are init blocks of a class
2015-11-19 22:56:54 +03:00
Dmitry Jemerov
9e0ec80c6a
Merge branch 'KT-1396' of https://github.com/mcgee/kotlin into mcgee-KT-1396
2015-11-17 18:49:44 +01:00
Dmitry Jemerov
bf35099e0c
use "destructuring declarations" term instead of "multi-declarations"
2015-11-17 18:43:26 +01:00
Anton Sukhonosenko
bec6621654
#KT-1396 Fixed
2015-11-17 19:33:18 +03:00
Valentin Kipyatkov
52dc23012f
Changed parsing of object and enum entries to drop "KtObjectDeclarationName"
2015-11-05 23:21:22 +03:00
Valentin Kipyatkov
74f2d60e19
No duplicate property accessor should be allowed
2015-10-22 18:48:19 +03:00
Mikhail Glukhikh
d6988ad69e
Get rid of FIELD_IDENTIFIER at syntax level, two errors dropped, a set of tests fixed / deleted #KT-9539 Fixed
2015-10-21 16:36:55 +03:00
Svetlana Isakova
6c4771147a
Added more tests on annotations for nullable types
2015-10-16 21:58:43 +03:00
Valentin Kipyatkov
292ea7625c
Removed obosolete modifier "ref" from tests
2015-10-15 19:20:11 +03:00
Valentin Kipyatkov
87cfccc2d9
Removed all places in parser where obsolete annotation syntax was allowed
2015-10-15 19:20:10 +03:00
Valentin Kipyatkov
d84020b1f3
Removed special support for parsing annotations for multi-declaration in for
2015-10-15 19:20:08 +03:00
Valentin Kipyatkov
98dc8f234e
Drop suppport for annotation syntax without '@' from parser
2015-10-15 19:20:07 +03:00
Alexander Udalov
66417ed329
Parse type arguments after callable reference as error
...
Is likely to be supported in the future
2015-10-15 18:25:42 +03:00
Michael Nedzelsky
1818e9f1bd
fix parse ``
2015-10-14 16:57:03 +03:00
Svetlana Isakova
b709b431ea
Parse annotations on nullable types
2015-10-12 16:28:48 +03:00
Svetlana Isakova
b49a3f8e00
Added test for annotations on nullable types
2015-10-12 16:28:48 +03:00
Dmitry Jemerov
02a242f15a
parser tweaks to compensate for removal of static type assertions
2015-10-12 11:11:30 +02:00
Dmitry Jemerov
1523d5bcbf
removing static type assertions work in progress
2015-10-12 11:11:23 +02:00
Svetlana Isakova
9b1030de2e
Annotations on type projection belong to type reference
2015-10-09 11:05:52 +03:00