kenji tomita
817d75a47f
Introduce ReplaceToStringWithStringTemplateInspection #KT-13782 Fixed
2018-06-20 17:18:17 +03:00
Dmitry Petrov
f956e8d85d
Record special descriptor in REFERENCE_TARGET for type alias object
...
If a type alias is used to reference an object (companion object) as a
qualifier, record FakeCallableDescriptorForTypeAliasObject in
REFERENCE_TARGET. This tells IDE that type alias was used in the file,
thus, if it's imported, such import isn't redundant.
REFERENCE_TARGET is used mostly by IDE and by ClassifierUsageChecker,
which we also have to update to handle qualifiers with
FakeCallableDescriptorForTypeAliasObject in REFERENCE_TARGET.
Rewrite some parts of ClassifierUsageChecker for cleaner interaction.
#KT-21863 Fixed Target versions 1.2.40
2018-06-20 17:16:25 +03:00
Dmitry Petrov
3b3cc5233f
Minor: reformat code
2018-06-20 17:16:25 +03:00
Toshiaki Kameyama
6675d7814c
KT-14779 Inspection to replace String.format with string templates ( #1645 )
...
* Add inspection to replace String.format with string templates #KT-14779 Fixed
* KT-14779 Fixed
2018-06-20 16:23:04 +03:00
Toshiaki Kameyama
e41a34af88
KT-11850 Add nested lambdas with implicit parameters warning ( #1664 )
...
* Add `Nested lambda has shadowed implicit parameter` inspection #KT-11850 Fixed
* KT-11850 Fixed
2018-06-20 15:57:03 +03:00
Roman Artemev
c0f53f3a4d
Move IrSuspendableExpression and SuspensionPoint from Kotlin/Native to common part
2018-06-20 15:06:00 +03:00
Dmitry Petrov
c312fddb45
Ignore some 'when' subject variable tests in JS_IR be
2018-06-20 14:06:34 +03:00
Dmitry Petrov
a4b5d74ae3
Generate debug information for 'when' subject variable
...
NB debugger tests currently don't support language version or individual
language feature settings.
2018-06-20 14:06:34 +03:00
Dmitry Petrov
a7492e91c9
Check that subject expression is evaluated only once
2018-06-20 14:06:34 +03:00
Dmitry Petrov
6194cfc782
Additional IEEE754-related tests for subject variable in 'when'
2018-06-20 14:06:34 +03:00
Dmitry Petrov
34b76a3718
Support subject variable in specialized code generators for 'when'
2018-06-20 14:06:34 +03:00
Dmitry Petrov
3528405666
Minor: reformat
2018-06-20 14:06:34 +03:00
Dmitry Petrov
b4dc3dc91b
Fix exhaustiveness check for when with subject variable
2018-06-20 14:06:34 +03:00
Dmitry Petrov
6949610dcb
'val' in 'when': IEEE754 equality
2018-06-20 14:06:34 +03:00
Dmitry Petrov
67247ee490
'val' in 'when' subject can't have modifiers (annotations are ok)
2018-06-20 14:06:34 +03:00
Dmitry Petrov
53fd883e2a
Additional parser tests for both subject val and expression in 'when'
2018-06-20 14:06:34 +03:00
Dmitry Petrov
bf083314dd
Support 'when' with subject variable in psi2ir
2018-06-20 14:06:34 +03:00
Dmitry Petrov
d6894091a9
Support 'when' with subject variable in JVM BE
2018-06-20 14:06:34 +03:00
Dmitry Savvinov
148d03e365
Add some data flow analysis tests on when
2018-06-20 14:06:34 +03:00
Dmitry Petrov
ae929d0f08
Handle nested when with subject properly
...
Hack: callee expression for when with subject variable is the subject
variable declaration. This solves the problem that all sub-calls in the
expression are implicitly considered to have a single common lexical
scope (and 'when (val x = ...)' introduces a new lexical scope, which
contains 'x').
2018-06-20 14:06:34 +03:00
Dmitry Petrov
758548603e
Extra tests for when with val in subject
2018-06-20 14:06:34 +03:00
Dmitry Petrov
c691d64ea8
Minor: fix & reformat after rebase
2018-06-20 14:06:34 +03:00
Dmitry Petrov
8aec99f4b5
Fix parsing variable declaration in when subject
...
- parse destructuring declarations
- parse annotations on variable declaration in when subject
2018-06-20 14:06:34 +03:00
Dmitry Petrov
091b935c2d
Introduce separate callee expression for when with subject variable
...
'Subject.Error' is redundant.
'Subject.None' can be an object.
'Subject#dataFlowValue' can be a lateinit property.
TODO: fix
- parsing local extension properties in 'when' subject
- parsing destructuring declarations in 'when' subject
- non-completed calls in nested 'when' with subject variable
- non-completed calls for subject variable in 'in' pattern
2018-06-20 14:06:34 +03:00
Dmitry Petrov
a76bf57694
Minor: remove redundant cast
2018-06-20 14:06:34 +03:00
Dmitry Petrov
5f0c9490bb
Add test for smart cast on a value bound to when subject variable
...
E.g.:
when (val y = x?.foo()) {
null -> ...
else -> ... // 'x' is also non-null here
}
2018-06-20 14:06:34 +03:00
Dmitry Petrov
0a0bc67e8a
Add test for UNUSED_VALUE on when subject variable
2018-06-20 14:06:34 +03:00
Dmitry Petrov
c20c1abb68
Add test for VAL_REASSIGNMENT on when subject variable
2018-06-20 14:06:34 +03:00
Dmitry Petrov
f6d446da47
It's ok to have no subject expression
2018-06-20 14:06:34 +03:00
Dmitry Petrov
7bc89b8871
Report error on illegal variable declaration in when subject
2018-06-20 14:06:34 +03:00
Dmitry Petrov
4fe894c03d
Minor: extract variable subject processing to a separate fun
2018-06-20 14:06:34 +03:00
Dmitry Petrov
098d3eb235
Make smart casts work with variable declared in when subject
2018-06-20 14:06:34 +03:00
Dmitry Petrov
1eeafc2d0e
Resolve variable declaration in 'when' subject
2018-06-20 14:06:34 +03:00
Toshiaki Kameyama
84e49e5b57
JS: Fix ClassCastException that occurs when 'when' clause has map range #KT-23458 Fixed
2018-06-20 14:00:29 +03:00
Toshiaki Kameyama
65ba57bcae
JS: Fix TranslationRuntimeException on 'for (x in ("a"))' #KT-22376 Fixed
2018-06-20 13:59:10 +03:00
cobr123
db3c9962a2
Updates ReadMe.md JS issue link
...
{Backend. JS} instead {Back-end. JavaScript}
2018-06-20 12:51:10 +03:00
Dmitry Savvinov
9c61f65c0f
Support internal compiler flags (-XX) in facets importing
2018-06-20 12:40:11 +03:00
Dmitry Savvinov
3fdfb49ac6
Minor: reformat and clean-up facetUtils.kt
2018-06-20 12:40:11 +03:00
Egor Neliuba
4fd076e4f4
Fix typo in DefaultErrorMessagesAndroid
...
"Delegating 'Parcelable' is now allowed" -> "Delegating 'Parcelable' is not allowed"
2018-06-20 01:04:30 +03:00
Yan Zhulanow
83ec49db31
Pill: Ignore kotlin-scripting compiler plugin from compiler arguments
2018-06-20 01:00:25 +03:00
Vyacheslav Gerasimov
fa56afca08
as31: Revert unintended changes in plugin.xml.as31
2018-06-19 21:35:26 +03:00
Vyacheslav Gerasimov
ea98a892d2
as31: Set until-build to 173.* instead of last AS 3.1 version (173.4301.25)
...
Was 173.4301.25 because of early builds of AS 3.2 which were 173 based
2018-06-19 21:05:58 +03:00
Vyacheslav Gerasimov
fa2eafe214
as31: Update AS to 3.1.3.0
2018-06-19 21:05:57 +03:00
Mikhail Zarechenskiy
fcacdc1fc5
Fix bridge methods generation when inline class types are used
2018-06-19 20:09:35 +03:00
Mikhail Zarechenskiy
f326fd66be
Propagate KotlinType into if expression codegen for inline classes
2018-06-19 19:54:22 +03:00
Mikhail Zarechenskiy
c8c943e5fe
[NI] Use context for relevant nested call to run call checkers
...
#KT-24808 Fixed
2018-06-19 19:54:21 +03:00
Roman Artemev
f69bd54d6c
[JS IR BE] Update test data
2018-06-19 17:09:31 +03:00
Roman Artemev
02628e8de3
[JS IR BE] Support exceptions in IR BE runtime
2018-06-19 17:09:24 +03:00
Roman Artemev
b65443dd25
[JS IR BE] Support try-catch-finally in new backend
2018-06-19 17:08:14 +03:00
Alexey Tsvetkov
cdfcedb897
Minor: reword progress message
...
#KT-24936 fixed
2018-06-19 15:43:24 +03:00