Alexander Udalov
3f1533c35b
Restore support for local class literals in annotation arguments
...
This was broken in c1ab08c8ce where we started to represent KClassValue
as a ClassId of the referenced class + number of times it's been wrapped
into kotlin.Array. Local classes do not have a sane ClassId, so in this
change we restore the old behavior by representing KClassValue with a
sealed class value instead
#KT-29891 Fixed
2019-02-25 19:22:09 +01:00
Yan Zhulanow
0657a3d399
New evaluator that doesn't depend on the 'extract function' refactoring (KT-28192, KT-25220, KT-25222, KT-21650)
2019-02-25 14:43:57 +03:00
Yaroslav Russkih
028a311949
Use https everywhere - tests and test data
2019-02-19 21:35:36 +01:00
Denis Zharkov
82537cdc8b
Add recovery for missing comma between arguments
...
^KT-13497 Fixed
2019-01-17 14:58:01 +03:00
Mikhail Glukhikh
ad44118605
Delay UNUSED_PARAMETER on main parameter until 1.4 (part of KT-26999)
2018-10-31 19:00:29 +03:00
Mikhail Glukhikh
387efc3791
Highlight unused parameters in main function in 1.3 (KT-26999)
2018-10-25 19:11:45 +03:00
Alexander Udalov
c1ab08c8ce
Refactor KClassValue to store ClassLiteralValue internally
...
Only invariant array projections and non-null element types will be
supported soon (see KT-26568), so it makes no sense to store the
complete type in KClassValue. What we need is only the ClassId of the
class, and the number of times it's wrapped into kotlin/Array, which is
exactly what ClassLiteralValue represents.
This change helps in decoupling annotation values from
descriptors/types. The only constant value that depends on descriptors
is now AnnotationValue.
#KT-26582 Fixed
2018-10-25 16:27:23 +02:00
Mikhail Glukhikh
de36d919aa
Fix testJvmStaticUsagesRuntime from PSI checker, messages updated to 1.3
2018-09-20 17:28:07 +03:00
Natalia Selezneva
790188120a
Add LightProjectDescriptor with script-runtime dependency. Use it in PsiChecker tests.
2018-07-10 08:43:52 +02:00
Mikhail Glukhikh
e76debb12b
Report UNUSED_PARAMETER in setter #KT-21129 Fixed
2018-05-04 18:04:57 +03:00
Mikhail Glukhikh
f46fa263ef
Fix two psi checker tests (related to annotation diagnostic / parsing)
2018-01-30 15:41:06 +03:00
Nikolay Krasko
2386cfbd07
Do not spell check overridden declaration names (KT-15000)
...
#KT-15000 Fixed
2018-01-19 22:41:51 +03:00
Mikhail Zarechenskiy
081b732070
Improve diagnostics for lateinit properties with generic type
...
#KT-11834 Fixed
2017-09-05 14:44:55 +03:00
Mikhail Zarechenskiy
4d4c39939f
Report full package FQ name in compilation errors related to visibility
...
#KT-18966 Fixed
2017-08-07 18:49:55 +03:00
Mikhail Zarechenskiy
ee173077c0
Simplify diagnostic when there are wrong number of type arguments
...
#KT-12767 Fixed
2017-07-12 14:37:27 +03:00
Mikhail Zarechenskiy
0ae45a2835
Add test for obsolete issue
...
#KT-6502 Obsolete
2017-07-07 14:20:01 +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
16de991b07
Add test for obsolete issue
...
#KT-8262 Obsolete
2017-06-22 13:41:30 +03:00
Mikhail Zarechenskiy
2a4cac024b
Add test for obsolete issue
...
#KT-13813 Obsolete
2017-06-19 17:36:10 +03:00
Mikhail Zarechenskiy
b53a3b324f
Fix 'infix call' diagnostic for in operation
...
#KT-8845 Fixed
2017-06-19 17:36:08 +03:00
Pavel V. Talanov
bdf76f23c4
Jvm Codegen: do not throw on malformed delegation to a type parameter
...
Fix exception on light class building
See KT-15931
2017-06-06 17:11:19 +03:00
Dmitry Petrov
c83b764c73
Update testData after changes in diagnostics
2017-05-26 13:58:46 +03:00
Dmitry Petrov
a86fe89aae
Include file name for package-level members in diagnostics
2017-05-26 13:58:46 +03:00
Dmitry Petrov
17eab2865d
Include containing declaration name in message for JVM signature clashes
...
#KT-9359 Fixed
2017-05-26 13:58:46 +03:00
Alexander Udalov
f8e82f148a
Drop TypeLazinessToken and LazyResolveToken
2017-05-22 18:15:19 +03:00
Dmitry Neverov
cd24adac32
Detect redundant 'is' check
...
#KT-14187 Fixed
2017-05-15 11:24:35 +03:00
Mikhail Zarechenskiy
438f318d3e
Minor, update test data
2017-04-10 16:35:00 +03:00
Mikhail Zarechenskiy
7f287a4230
Support warning about useless cast on safe cast
...
#KT-13348 Fixed
2017-04-10 12:48:09 +03:00
Mikhail Zarechenskiy
f518e8ebb8
Prefer stable types to diagnose useless cast
...
#KT-11622 Fixed
2017-04-05 21:35:05 +03:00
mglukhikh
9fa16364e1
Find enclosing element for object literal in delegate #KT-8187 Fixed
2017-04-05 16:38:04 +03:00
Mikhail Glukhikh
7a53b2f4c8
Introduce UNUSED_ANONYMOUS_PARAMETER for anonymous functions
...
It is not reported for 1.0 language version because
renaming to _ is not possible. It has weak warning severity
So #KT-8813 Fixed
So #KT-16875 Fixed
2017-04-04 14:23:30 +03:00
Mikhail Glukhikh
1780f7c9a2
Put not-null original type as last possible smart cast target
...
This fixes muted tests testSmartCast (IDE highlighting) and
testNestedSealed (Diagnostics).
Together with commit 555b3f12 this makes #KT-15901 Fixed
2017-03-23 17:17:37 +03:00
mglukhikh
b53ebd115b
Pattern matching: work-around for smart cast target type instability #KT-14705 Fixed
2017-01-24 13:51:14 +03:00
Dmitry Petrov
b9f9894310
KT-15677 KT-15775
...
Update parser & descriptor renderer to handle parenthesized types and function types properly.
Resolve annotations in parenthesized types.
AnnotationsImpl.isEmpty() returned false for targeted annotations only
(e.g., 'fun @receiver:Ann C?.foo()').
Properly keep track of targeted annotations.
2017-01-19 09:53:17 +03:00
Dmitry Petrov
954204da82
KT-1560
...
Report warning on extensions shadowed by members.
2017-01-16 17:25:13 +03:00
Nikolay Krasko
6ca5ba3615
Don't call getClassDescriptor for local declarations (KT-15259)
...
#KT-15259 Open
2016-12-21 13:13:10 +03:00
Dmitry Petrov
0fa2c54ae8
Identity comparison for primitives is deprecated (warning).
...
Identity comparison for primitive vs non-primitive is a warning (due to implicit boxing).
2016-12-20 11:00:58 +03:00
Denis Zharkov
85db356611
Minor. Drop test on coroutine applicability
2016-12-15 23:58:03 +03:00
Denis Zharkov
a34c9c2580
Support new suspend convention in frontend
...
#KT-14924 In Progress
2016-11-29 14:14:50 +03:00
Alexander Udalov
eacf64e4db
Report initializer block-related diagnostic on 'init' keyword
2016-11-22 18:19:01 +03:00
Ilya Gorbunov
8f3e6f38ed
Select runtime with directive in test data file instead of test name in PsiChecker tests
2016-11-16 18:47:42 +03:00
Denis Zharkov
4c69416f2b
Report warning on unused entities that can be renamed to _
...
Currently it's all about lambda parameters/destructuring entries
#KT-14347 In Progress
2016-10-24 10:19:25 +03:00
Mikhail Glukhikh
8d48b0d2a0
UNUSED_VARIABLE is now reported only for last entry of destructuring declaration (if applicable) #KT-14221 Fixed
2016-10-10 14:42:09 +03:00
Mikhail Glukhikh
e7d290f726
Refactor PSI for destructuring declarations in for: they are now children of KtParameter and not instead of it
2016-10-06 21:03:19 +03:00
Denis Zharkov
d4418d5686
Prohibit not-Unit suspend functions
...
#KT-13560 Fixed
2016-09-30 12:25:59 +03:00
Denis Zharkov
96186c6217
Prohibit star-projections in last parameter of suspend functions
2016-09-30 12:25:59 +03:00
Nikolay Krasko
795fef20d7
Don't highlight declaration with WRAPPED_INTO_REF
...
Leave highlighting only for usage. This may allow to make highlighting more local and lazy.
Java follows the same rules for "Implicit anonymous class parameter".
2016-09-02 13:41:24 +03:00
Mikhail Glukhikh
ae856e834a
Store map (Call to KotlinType) for SMARTCAST slice #KT-13426 Fixed
...
Also EA-86848 Fixed
2016-08-17 16:09:45 +03:00
Mikhail Glukhikh
cbcef67d82
KT-13426: store map from ImplicitReceiver into KotlinType for implicit receiver smart casts
2016-08-17 16:09:34 +03:00
Ilya Gorbunov
2a0076d9bd
Test data: replace Exception with Throwable (in those tests where particular exception type is not crucial in order not to rename tests to have runtime dependency added with exception typealiases).
2016-08-17 12:40:50 +03:00