Alexey Sedunov
2e76a76088
Control Flow: Fix CFG usage info for double-colon expressions
...
#KT-12551 Fixed
#KT-17092 Fixed
2017-07-17 16:09:51 +03:00
Stanislav Erokhin
397103f9d0
[NI] Fix smart cast for expression with captured input type.
2017-07-14 12:43:05 +03:00
Stanislav Erokhin
73cc1fdd9c
[NI] Resolve type variable to Nothing for TO_SUBTYPE direction.
2017-07-14 12:43:04 +03:00
Stanislav Erokhin
6e24b0f89d
[NI] Approximate captured types when we resolve type variable TO_SUPER.
2017-07-14 12:43:04 +03:00
Stanislav Erokhin
53caa84db9
[NI] Add constrains even we try add constraint like TypeVariable <: CapturedType from subtyping.
...
If such captured type has lower type, then from TypeVariable <: lowerType => TypeVariable <: CapturedType.
2017-07-14 12:43:04 +03:00
Stanislav Erokhin
0fadf0bf70
[NI] Approximate captured types before type variable fixation.
...
We prefer denotable types when we solve constraint system.
I.e. if for T we have not equality constraint with captured type we can approximate captured type to denotable type.
2017-07-14 12:43:03 +03:00
Stanislav Erokhin
b4bf534d29
[NI] Capture from supertypes of type parameter.
...
This works by accident in OI, so this should be supported by new inference.
2017-07-14 12:43:03 +03:00
Mikhail Zarechenskiy
2d3ce89afc
Use only completed arguments of special call
2017-07-13 12:26:03 +03:00
Alexander Udalov
f01de3a935
Minor, move lateinit tests into a subdirectory
2017-07-12 18:59:02 +03:00
Mikhail Zarechenskiy
e82c909f75
Use more specific status to report diagnostics
...
#KT-12737 Fixed
2017-07-12 14:37:26 +03:00
Mikhail Zarechenskiy
178bb900b4
Introduce inapplicable wrong receiver status to improve diagnostics
...
#KT-10754 Fixed
2017-07-12 14:37:26 +03:00
Mikhail Zarechenskiy
79ee8f452c
Add test for obsolete issue
...
#KT-12688 Obsolete
2017-07-12 14:37:26 +03:00
Dmitry Petrov
83ec8aa918
typealias expansion fixes
...
- Exception on dynamic type in typealias argument expansion
#KT-18858 Fixed Target versions 1.1.5
- Wrong report location for repeated annotations in typealias arguments
#KT-18940 Fixed Target versions 1.1.5
- Don't drop type annotations for dynamic type
#KT-18944 Fixed Target versions 1.1.5
2017-07-11 10:33:39 +03:00
Mikhail Zarechenskiy
3fed4e6dc7
Improve diagnostic for unresolved reference when function expected
...
#KT-10657 Fixed
2017-07-07 14:20:02 +03:00
Mikhail Zarechenskiy
f5cd8c7e4d
Relax name shadowing warning on parameter names
...
#KT-17611 Fixed
2017-07-07 14:19:57 +03:00
Toshiaki Kameyama
ed04b4debd
Add quick-fix for empty brackets after primary constructor
...
So #KT-18534 Fixed
2017-06-28 15:28:21 +03:00
Denis Zharkov
bc564af2fc
Regenerate mockJDK using openJDK 7
2017-06-24 17:26:01 +03:00
Mikhail Zarechenskiy
87a41293e8
Improve diagnostics on callable reference of unresolved class
...
#KT-10839 Fixed
2017-06-22 15:02:13 +03:00
Mikhail Zarechenskiy
0f350f5db8
Don't report error on member that overrides open member from final class
...
#KT-14598 Fixed
2017-06-22 15:02:09 +03:00
Mikhail Zarechenskiy
9847278699
Report error about invalid if as expression on the if keyword
...
#KT-14633 Fixed
2017-06-22 14:18:11 +03:00
Mikhail Zarechenskiy
7a9e1b2b1d
Improve diagnostic on overload resolution ambiguity
...
Report type mismatch on argument when a nullable argument is passed to non-null parameter.
Note that this affects only functions with simple types without generics
#KT-2007 Fixed
#KT-9282 Fixed
2017-06-22 13:41:31 +03:00
Mikhail Zarechenskiy
4b3ffd9418
If all candidates are invisible then don't report ambiguity
...
#KT-10045 Fixed
2017-06-22 13:41:28 +03:00
Mikhail Zarechenskiy
cd1ae7f0f2
Add resolution status to report about unsuccessful smartcast
...
#KT-10248 Fixed
#KT-11119 Fixed
2017-06-22 13:41:27 +03:00
Mikhail Zarechenskiy
0f4497256b
Report about wrong number of type arguments instead of ambiguity
...
#KT-7975 Fixed
#KT-1809 Fixed
2017-06-22 13:05:10 +03:00
Alexander Udalov
9471f33c38
Refactor getDefaultSupertype, drop obsolete diagnostic
2017-06-20 14:39:47 +03:00
Mikhail Zarechenskiy
b53a3b324f
Fix 'infix call' diagnostic for in operation
...
#KT-8845 Fixed
2017-06-19 17:36:08 +03:00
Mikhail Zarechenskiy
dbfea9b787
Fix TCE for invalid code with wrong callee expression
...
#KT-14927 Fixed
2017-06-19 17:36:06 +03:00
Mikhail Zarechenskiy
011231f2ab
Collect sam adapters for constructors in synthetic scope
...
Also place computation of synthetic constructors under one function
2017-06-16 16:44:52 +03:00
Derek Alexander
1f5cc059f9
Fix compiler failure related NO_EXPECTED_TYPE
...
Changes to turn KT-16016 into a compiler diagnostic error rather than a
stack trace
#KT-16016 Fixed
2017-06-16 15:52:09 +03:00
Ilya Gorbunov
d7ad1f3950
Explicitly disable ArrayLiteralsInAnnotations feature in test which validates it's unsupported
2017-06-10 10:00:15 +03:00
Mikhail Glukhikh
630af6a9c6
Correct 1.1-specific test to fix 1.2-M1 build
2017-06-09 13:10:37 +03:00
Mikhail Glukhikh
ecfc2236a6
Fix script properties kind in modifier checker #KT-18234 Fixed
2017-06-05 17:22:11 +03:00
Alexey Andreev
9375a1d984
Prohibit illegal identifiers in packages in JS BE
...
See KT-18032
2017-05-29 15:37:30 +03:00
Mikhail Glukhikh
adbece82ef
Clear DF info for variables assigned in 'try' #KT-17929 Fixed
2017-05-26 15:39:27 +03:00
Mikhail Glukhikh
0fd70df681
Add tests for KT-17929
2017-05-26 15:39:25 +03:00
Dmitry Petrov
2c83718452
Prohibit having duplicate parameter names in functional types
...
#KT-15804 Fixed
2017-05-26 13:58:46 +03:00
Dmitry Petrov
9908212c99
Report VIRTUAL_MEMBER_HIDDEN on declaration name
...
#KT-13749 Fixed
2017-05-26 13:58:46 +03:00
Dmitry Petrov
d850f01c39
Fix diagnostic for uninitialized extension property without accessors
...
#KT-8612 Fixed
2017-05-26 13:58:46 +03:00
Dmitry Petrov
902d3af280
Prohibit extending kotlin.Enum directly
...
#KT-7773 Fixed
2017-05-26 13:58:46 +03:00
Mikhail Glukhikh
af3a123c15
Report WRONG_MODIFIER_CONTAINING_DECLARATION for vararg in setter
2017-05-26 09:47:51 +03:00
Mikhail Zarechenskiy
400ecd5e13
Support destructuring declarations in scripts and REPL
...
#KT-5620 In Progress
#KT-15810 In Progress
2017-05-25 16:46:04 +03:00
Dmitry Petrov
7600b6de52
Allow top-level type aliases in scripts
2017-05-24 11:20:22 +03:00
Alexander Udalov
6d47991172
Minor, use other package in test data file
...
To avoid rendering contents of package org.intellij.lang.annotations
into the corresponding .txt file
2017-05-22 18:15:32 +03:00
Mikhael Bogdanov
ba06ad3e53
Minor. Fix test directive
2017-05-22 08:31:03 +02:00
Mikhael Bogdanov
f4a388cf71
Add new tests for default lambda inlining
2017-05-18 18:18:14 +02:00
Mikhael Bogdanov
42074f143d
Report diagnostic on inline parameter usage inside defaul value for another inline parameter
2017-05-18 18:18:13 +02:00
Dmitry Petrov
c1ef0bfcdb
Report deprecation on usage of type alias expanded to a deprecated class
...
#KT-15243 Fixed
2017-05-18 10:56:02 +03:00
Dmitry Petrov
a2db4dc0d5
Fix incremental compilation problems related to type alias constructors
...
1. Determine source element for descriptors with NO_SOURCE recursively.
2. Always provide type abbreviation for type alias constructor
return type.
#KT-15495 Fixed
2017-05-18 10:55:16 +03:00
Mikhael Bogdanov
0ac23c789e
Add diagnostics for default lambda inlining
2017-05-17 10:19:54 +02:00
fitermay
e30b9758f4
Introduce action to add missing when branches on sealed class
...
Made via diagnostics NON_EXHAUSTIVE_WHEN_FOR_SEALED_CLASS
with INFO severity and quick-fix
So #KT-17580 Fixed
2017-05-16 16:43:27 +03:00