Commit Graph

7951 Commits

Author SHA1 Message Date
Denis Zharkov f91db5f0b8 Restore correct overloads ambiguity accidentally removed in 1.3.60
This problem is only relevant when isTypeRefinementEnabled == true (HMPP projects)

Ambiguity accidentally was removed after 471134d
There, for areCallableDescriptorsEquivalent we stopped assuming
as impossible a situation of having identity-different descriptors
in the same containing declaraton that still might be considered equal

So, before 471134d we were comparing
"fun foo(x: String)" with "[substituted] fun foo(x: String)"
and areCallableDescriptorsEquivalent returned false for such case.
Thus, both overrides were left in the resulting set.

After 471134d, those two descriptors
becamed considered as equal thus having a possibility to remove any of them.

The problem is that "areCallableDescriptorsEquivalent" has kind of
unclear contract. Effectively it checks whether two descriptors match
to the same declaration.

But some of the usages expect that it also makes sure that descriptors
have the same substitution (see org.jetbrains.kotlin.resolve.calls.smartcasts.IdentifierInfo.Variable#equals)

So, the straight solution is using original descriptors for the cases
where we need to make sure that descriptors relates to actually different
declarations

^KT-34027 Fixed
2019-09-30 20:09:42 +03:00
Nikolay Krasko 552408e887 Minor: update test data for quick doc with deprecated annotation 2019-09-30 13:38:27 +03:00
Nikolay Krasko 751a18e64b Minor: update test data PartialBodyResolveTestGenerated 2019-09-30 13:38:26 +03:00
Natalia Selezneva 064689b6b7 Merge pull request #2467 from t-kameyama/KT-14756
KT-14756 Move statement down breaks code in argument list
2019-09-30 13:19:07 +03:00
Nikolay Krasko 1804619076 Fix AmbiguousCalls test in 192 2019-09-30 00:53:03 +03:00
Dmitriy Novozhilov 439e8faf94 [NI] Remove outdated intention test according to fixed consistency of OI and NI 2019-09-27 17:20:47 +03:00
Toshiaki Kameyama 82f75c707e "Convert to range check" inspection: apply ReplaceRangeToWithUntilInspection after convertion
#KT-33880 Fixed
2019-09-27 20:33:48 +07:00
Ilya Matveev 95cbb4e8b4 IDE: Add a flag to disable native libraries propagation 2019-09-27 18:06:58 +07:00
Ilya Matveev becdd7a5e6 Add a test for native dependency propagation 2019-09-27 18:06:57 +07:00
Dmitry Gridin 589094377e QualifiedExpressionResolver: change root prefix from _Qfadj4tPV to _root_ide_package_ 2019-09-27 17:52:11 +07:00
Alexander Podkhalyuzin 9a2da67919 ShortenReferences: cleanup code & add tests for property-function conflicts 2019-09-27 17:52:11 +07:00
Andrey Uskov ca75aeb534 Update kotlin gradle plugin version in HMPP tests 2019-09-27 12:00:08 +03:00
Andrey Uskov 715fad849d Importing test tasks and targets is implemented 2019-09-27 11:59:58 +03:00
Toshiaki Kameyama 40dd229021 Join with assignment: place the result at the assignment
#KT-21172 Fixed
2019-09-27 09:16:52 +03:00
Toshiaki Kameyama fdf9acfb6a Introduce subject to when: suggest for qualified, not for obj / constant
#KT-18772 Fixed
2019-09-27 08:26:52 +03:00
Alexander Podkhalyuzin 66bed85176 Fixed testdata for new inference 2019-09-26 16:25:50 +03:00
Dmitry Gridin 57d25fc5f5 Create actual: add type accessibility checker
#KT-28740 Fixed
2019-09-26 20:21:54 +07:00
Dmitry Gridin fcaa897b9f Tests: extract addMissingActualMembers from multiModuleQuickFix/other 2019-09-26 20:21:54 +07:00
Dmitry Gridin a552f06526 Create expect/actual: improve error hint message
#KT-33754 Fixed
2019-09-26 20:21:54 +07:00
Pavel Kirpichenkov 6c8e829f19 Update diagnostics for trailing lambdas, add quickfix
Alternative message for errors, caused by unexpected lambda expression arguments on a new line.
Both diagnostic are reported, if multiple lambda expressions were passed to the call.
For other errors trailing lambda diagnostic overrides the original one.

Quickfix for erroneous trailing lambdas on a new line after call.
Fix separates lambda expression from previous call with semicolon.
All trailing lambda arguments become standalone lambda expressions.
2019-09-25 15:38:17 +03:00
Alex Chmyr b8cce67d2e KT-19355 fix for "Variable expected" error after J2K for increment/decrement of an object field 2019-09-25 10:08:42 +03:00
Toshiaki Kameyama 748e458ad7 "Override members": add semicolon between enum entry and function
#KT-31139 Fixed
2019-09-25 12:34:49 +07:00
Toshiaki Kameyama 7fcca71b4b Replace with dot call quickfix: don't break formatting
#KT-25697 Fixed
2019-09-25 12:06:51 +07:00
Mikhail Zarechenskiy 78affdd2b4 Fix old testdata: add missing operator modifier
This testdata was written when there was no "operator" modifier.

 After a83225218f rules for operators become stricter and now functions without operators are not considered as such
2019-09-25 01:52:55 +03:00
Toshiaki Kameyama 0e1e1e350f "Convert lambda to reference": do not remove required backticks
#KT-15700 Fixed
2019-09-24 19:45:53 +07:00
Toshiaki Kameyama 44edd94fea "Create member function" quick fix: do not add redundant semicolons after enum entry
#KT-14899 Fixed
2019-09-24 19:40:31 +07:00
Toshiaki Kameyama 0497f0cba4 "Create enum constant" quick fix: add before semicolon
#KT-33718 Fixed
2019-09-24 19:31:52 +07:00
Toshiaki Kameyama 30c41e6720 "Create type parameter from usage": don't suggest for not extension property
#KT-33300 Fixed
2019-09-24 19:28:40 +07:00
Toshiaki Kameyama 5b666ff33f "Create type parameter from usage": don't remove backticks if necessary
#KT-33299 Fixed
2019-09-24 19:24:02 +07:00
Toshiaki Kameyama 784ba69b7a "Cleanup code": remove 'final' keyword for overridden function with non-canonical modifiers order
#KT-33060 Fixed
2019-09-24 18:28:00 +07:00
Dmitry Gridin 1ee827bfc8 Import quick fix: support provideDelegate
#KT-28049 Fixed
2019-09-24 16:27:10 +07:00
Toshiaki Kameyama 79199260b9 Import quick fix: suggest for operator extension function called from name reference
#KT-28049 Fixed
2019-09-24 16:27:09 +07:00
Toshiaki Kameyama 998adfb098 Move variable declaration into when: don't report when property has 'break' or 'continue'
#KT-31999
2019-09-24 12:11:41 +03:00
Toshiaki Kameyama 877e583a96 Move variable declaration into when: don't report when property has 'return' or 'throw'
#KT-31999 Fixed
2019-09-24 12:11:41 +03:00
Toshiaki Kameyama d9d04fc556 "Create enum constant" quick fix: do not add redundant empty line
#KT-32981 Fixed
2019-09-24 13:23:06 +07:00
Dmitry Gridin e3ce799993 Refactoring: change signature should affected expect/actual
#KT-33972 Fixed
2019-09-23 23:01:47 +07:00
Igor Yakovlev fc70fd05fc Enable kotlin.collections support for UL classes
Removed restriction for classes derived from Kotlin collections
Added type erasure for java collection overrided methods
2019-09-23 17:30:15 +03:00
Nikolay Krasko ee4ab967a4 Force resolve check for dispatch thread instead of isWriteAccessAllowed
isWriteAccessAllowed = dispatch thread + write lock
2019-09-23 16:54:35 +03:00
Natalia Selezneva 63e5d4fe95 Tests: rewrite some AbstractScriptConfigurationTest to the new script infrastructure 2019-09-23 12:06:25 +03:00
Natalia Selezneva eca7bbdb8c Scripts: Check if file is in all script dependencies class files scope instead of searching for module info
^KT-32799 Fixed
^KT-16760 Add test
2019-09-23 12:06:25 +03:00
Toshiaki Kameyama 92dcb54207 "Redundant overriding method" inspection: do not report when overriding package private method
#KT-33153 Fixed
2019-09-23 12:35:56 +07:00
Natalia Selezneva 3ad7f516be Add caret to test to check exception in ProjectResolutionFacade that can happen during resolving of symbol from script dependencies 2019-09-20 10:35:52 +03:00
Nikolay Krasko 9b32bd7138 Do special insert even for custom trimIndent() function to avoid using resolve (KT-31810) 2019-09-17 17:16:30 +03:00
Toshiaki Kameyama 147f805c56 Paste inside indented .trimIndent() raw string: respect indentation (KT-31810)
#KT-31810 Fixed
2019-09-17 17:16:30 +03:00
Nikolay Krasko fc4865a440 Don't extend to comments when a comment is being moved (KT-23461) 2019-09-16 16:57:48 +03:00
Toshiaki Kameyama ed28a06285 Move statement: move expression over comments (KT-23461)
#KT-23461 Fixed
2019-09-16 16:57:48 +03:00
Nikolay Krasko 26bef2d109 Fix muted usage highlighter test by ignoring irrelevant highlighting
UsageHighlightingTestGenerated.testImplicitReturnExpressionsInLambdasNoHightlighting
2019-09-16 16:26:02 +03:00
Toshiaki Kameyama 7b8abc5457 Move statement: enable expression ended with semicolon (KT-8581)
#KT-8581 Fixed
2019-09-16 16:26:02 +03:00
Pavel Kirpichenkov 55cb9561c2 Provide better error messages for read-only delegate
Split error reporting into two parts for incorrect and missing candidates.
Missing function error is not reported on provideDelegate.
Update error factory and default message for error.
Update error texts in quick fix test data.

#KT-16526 Fixed
2019-09-12 14:58:21 +03:00
Toshiaki Kameyama 6e852837f7 Folding: fold "when" expression (KT-6314)
#KT-6314 Fixed
2019-09-11 17:42:04 +03:00