Mikhail Glukhikh
17593e4ef6
Call completer: safe call with nullable receiver has nullable return type #KT-11007 Fixed
2016-02-13 10:48:07 +03:00
Valentin Kipyatkov
17ac168b33
KT-10621 Non-top level packages shown after "@" in completion
...
#KT-10621 Fixed
2016-02-13 10:20:18 +03:00
Michael Bogdanov
4f0f81155a
Weaken PRIVATE_CLASS_MEMBER_FROM_INLINE diagnostic
2016-02-12 17:24:30 +03:00
Dmitry Petrov
edf6a2142b
Check local function declarations for overload conflicts.
...
In PSI unifier tests, disable errors for tests on local functions (as irrelevant).
2016-02-12 09:54:21 +03:00
Nikolay Krasko
faba229b11
Use single constant for doNotAnalyze message
2016-02-11 17:39:51 +03:00
Pavel V. Talanov
7d98103c0c
overriddenDescriptors is empty for java static property and function declarations
...
Fake overrides are still created for java static with non-empty overriddenDescriptors
Add tests for inheriting visibility for java static members
Add test: check that java static declarations that shadow deprecated declarations should not be deprecated
Add test for corner case where "overriding" java static constant led to incorrect type in inheritor
Fix test data for existing tests
2016-02-11 14:08:14 +03:00
Pavel V. Talanov
7e78e8d8ab
Refactor: Move and rename OverridingUtil.DescriptorSink -> OverridingStrategy
2016-02-11 14:08:13 +03:00
Valentin Kipyatkov
8da01e7952
Minor
2016-02-11 12:26:22 +03:00
Dmitry Petrov
aed2f2b993
Property vs classifier conflict.
...
TODO get rid of duplicate diagnostics
(looks like OverloadResolver and DeclarationResolver are partially redundant; refactor them).
2016-02-11 10:32:46 +03:00
Dmitry Petrov
b2eb4200af
OverloadResolver.kt: convert to Kotlin & cleanup
2016-02-11 10:32:45 +03:00
Dmitry Petrov
6278459cc4
OverloadResolver.java --> .kt
2016-02-11 10:32:45 +03:00
Denis Zharkov
9ac2da8c96
Optimize 'setResultingSubstitutor'
...
Replace Map with plain List, use parameter's index as a key
2016-02-10 16:18:59 +03:00
Denis Zharkov
b9e677fef4
Get rid of redundant Map copy
2016-02-10 16:18:59 +03:00
Denis Zharkov
de3f507744
Add minor memory optimization
...
Get rid of 'unsubstitutedValueArguments' in resolved call
2016-02-10 16:18:59 +03:00
Mikhail Glukhikh
a08b8f43b2
Control flow graph for safe calls corrected #KT-10913 Fixed
...
Also #KT-10186 Fixed
Also #KT-5198 Fixed
2016-02-10 12:29:45 +03:00
Stanislav Erokhin
434bd0707d
Correcting rewrite type info after compete call.
...
#KT-10934 Fixed
#KT-10896 Fixed
2016-02-08 20:49:31 +03:00
Zalim Bashorov
74b2c8cd31
Minor: fix method name
2016-02-08 19:31:17 +03:00
Nikolay Krasko
909ced5fa2
Use non-local functions to avoid creating lambdas in heap
2016-02-08 16:43:55 +03:00
Nikolay Krasko
ff2029035e
Don't generate new empty list with TypeParameterDescriptor
2016-02-08 16:43:54 +03:00
Denis Zharkov
68110f5859
Add minor optimization
...
Do not copy overrides while creating FAKE_OVERRIDE
2016-02-08 16:40:47 +03:00
Denis Zharkov
18e7272a1e
Do not force overridden descriptors computation
...
Currently 'overriddenDescriptors' of substituted function is lazy
and in most cases it's unnecessary to compute it
(it's enough to use the same field from 'original')
2016-02-08 16:40:47 +03:00
Denis Zharkov
fae6de9acd
Replace 'addOverriddenDescriptor' with 'setOverriddenDescriptors'
...
It helps to get rid of redundant SmartSets (e.g. for top-level functions)
2016-02-08 16:40:47 +03:00
Zalim Bashorov
2c1d1e84a6
Allow to use internal declarations from special modules in IDEA
...
(e.g. IDEA 16 gradle tests loaded in separate module)
#KT-10595 Fixed
2016-02-08 15:42:47 +03:00
Dmitry Petrov
5968ce96df
KT-10939 CANNOT_COMPLETE_RESOLVE for inherited generic interface method
...
'original' for value parameters of fake override is not a value parameter of unsubstituted fake override.
Match value parameters by index.
2016-02-08 10:08:35 +03:00
Nikolay Krasko
938a435346
Allow to process return statements without parent KtDeclaration (EA-70883)
2016-02-06 17:50:17 +03:00
Dmitry Petrov
e4583fd275
Do not report IMPLICIT_CAST_TO_ANY on last statement of lambda with Unit(?) in at least one branch.
2016-02-05 10:44:50 +03:00
Pavel V. Talanov
7c84225cc4
Fix typechecker when initializer of destructuring declaration is unresolved or missing
2016-02-04 15:08:39 +03:00
Pavel V. Talanov
a4e3dd7030
Minor: refactor DestructuringDeclarationResolver
2016-02-04 15:08:39 +03:00
Mikhail Glukhikh
60d56b30bf
Safe call arguments are now handled as nullable in generic resolver #KT-9985 Fixed
2016-02-03 18:34:10 +03:00
Dmitry Petrov
4afe98a0f6
Better diagnostics for conflicting overloads.
...
Skip declarations without sources in reporting, not when determining redeclaration groups:
this allows emitting informative diagnostics for incremental compilation.
Provide containing declaration with "kind", e.g., "package '<root>'", "class A", and so on.
2016-02-03 15:53:07 +03:00
Michael Bogdanov
4b203de608
INVISIBLE_MEMBER_FROM_INLINE renamed to NON_PUBLIC_CALL_FROM_PUBLIC_INLINE
2016-02-03 10:35:29 +03:00
Michael Bogdanov
d1db404959
Error diagnostic for private classes in inline functions; Fix for KT-7545: IllegalAccessError when accessing private nested class through inlined function from different package
...
#KT-7545 Fixed
2016-02-03 10:32:41 +03:00
Mikhail Glukhikh
45298e0bad
Delegated properties now cannot be used before initialization #KT-10869 Fixed
2016-02-02 16:27:20 +03:00
Dmitry Petrov
65f754ffca
Fix KT-10764 IDEA doesn't show overload conflict between constructor and function...
...
When checking for overloads in package, consider functions and top-level class constructors as possibly conflicting between each other. NB OverloadUtil uses containing package scope from module descriptor.
Change diagnostic message for CONFLICTING_OVERLOAD: it's misleading in case of fun vs constructor conflict.
Add custom multifile test for diagnostics in IDE (probably not the best; should preprocess file content if it's required to check highlighting in multiple files, not only in the first file).
Add test for KT-10765 Incremental compilation misses overload conflict between constructor and function ...
2016-02-02 16:21:26 +03:00
Natalia Ukhorskaya
b19d32e4f2
Public members should have bigger priority in debugContext
...
#KT-10634 Fixed
2016-02-02 15:16:14 +03:00
Natalia Ukhorskaya
d60a5e65c1
Debugger: skip visibility check
2016-02-02 15:16:14 +03:00
Yan Zhulanow
da7acd5e73
Check annotations on default property getter/setter
2016-02-02 13:14:56 +03:00
Denis Zharkov
816c66063b
Report special diagnostic when fake-call receiver is nullable
...
#KT-3602 Fixed
2016-02-02 08:17:49 +03:00
Denis Zharkov
829a5639f1
Rework error reporting for fake call resolution
...
Move diagnostic creation to one place
2016-02-02 08:17:48 +03:00
Denis Zharkov
9b3f557337
Report MEMBER_PROJECTED_OUT on calls with smart cast receiver
...
#KT-10856 Fixed
2016-02-02 08:17:48 +03:00
Ilya Gorbunov
1cef327880
Throw assertion when inline-only is applied without inline
2016-02-01 22:09:17 +03:00
Mikhail Glukhikh
d194af5c4e
Correct report of NO_VALUE_FOR_PARAMETER when function call contains no brackets and lambda at the end #KT-7813 Fixed
2016-02-01 17:11:54 +03:00
Mikhail Glukhikh
84100abd9e
Annotations on object literals are now correctly resolved #KT-9320 Fixed
2016-02-01 16:24:57 +03:00
Denis Zharkov
e5f644a64a
Temporary disable warning about unchecked reified argument
...
#KT-10847 Fixed
#KT-6484 Reopened
2016-02-01 13:36:38 +03:00
Alexey Sedunov
99e4c8c06d
Create from Usage: Add commas after enum entries
...
#KT-10800 Fixed
2016-02-01 13:18:43 +03:00
Alexey Sedunov
1c65797950
Intentions: Fix contentRange() on empty KtBlockExpression
...
#KT-10776 Fixed
2016-02-01 13:18:40 +03:00
Dmitry Petrov
b3f390abe5
Fix KT-10775 Empty when causes compilation exception.
...
Expression type for an empty 'when' is 'kotlin.Unit'.
2016-01-29 18:50:48 +03:00
Denis Zharkov
505dc61611
Treat extension receiver as noinline parameter
...
#KT-9574 Fixed
2016-01-29 14:36:53 +03:00
Denis Zharkov
2cd88b8cbc
Make crossinline and noinline incompatible
2016-01-29 14:36:53 +03:00
Denis Zharkov
87741e9b9f
Minor. Get rid of redundant diagnostic parameters
2016-01-29 14:36:53 +03:00