Dmitry Petrov
2cd6b1d586
KT-14282 No error on unused type alias with -language-version 1.0
...
Always resolve descriptors for type aliases.
2016-10-11 16:33:21 +03:00
Denis Zharkov
543cf7b265
Minor. Move isJvmStatic* functions to backend
2016-10-11 12:22:03 +03:00
Ilya Gorbunov
5042158df5
Determine automatically which types from java.lang is aliased in default imported kotlin packages and exclude them from imported java.lang.* scope.
2016-10-10 20:14:32 +03:00
Valentin Kipyatkov
326db55835
Used KtReference.resolvesByNames instead of own code
2016-10-10 14:48:16 +03:00
Valentin Kipyatkov
5734f2ba9b
KT-9950 IntelliJ IDEA does not suggest importing extension methods which have the same name as an instance method
...
#KT-9950 Fixed
2016-10-10 14:48:15 +03:00
Valentin Kipyatkov
c06e2d994e
KT-13884 Exception "Invalid root block PSI element" on replacing trivial when-expression to if
...
#KT-13884 Fixed
2016-10-10 14:48:15 +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
126304c197
Destructure intention applied (compiler)
2016-10-10 14:42:04 +03:00
Alexey Andreev
6f7e7d8504
KT-2752: fixes after code review
2016-10-08 19:25:49 +03:00
Alexey Sedunov
d3c14ce7d6
Extract Function: Support implicit abnormal exits via Nothing-typed expressions
2016-10-07 20:20:39 +03:00
Alexey Sedunov
fe711da594
Rename: Rename do-while loop variables in the loop condition
...
#KT-14157 Fixed
2016-10-07 20:20:33 +03:00
Alexander Udalov
9004367f3c
Minor refactoring in DeprecatedCallChecker
2016-10-07 20:14:54 +03:00
Alexander Udalov
8949ffbef1
Do not report deprecation on members of deprecated companion
...
This deprecation is reported on the companion itself anyway
2016-10-07 20:14:53 +03:00
Alexander Udalov
b08ed14f66
Rename PlatformTypesMappedToKotlinChecker -> PlatformClassesMappedToKotlinChecker
...
To prevent confusion with the term "platform type" which has gained a new
meaning since this class was introduced
2016-10-07 20:14:05 +03:00
Alexander Udalov
6ec868d84e
Pass LanguageVersionSettings to ClassifierUsageChecker
...
To be used in future classifier usage checkers
2016-10-07 20:13:24 +03:00
Mikhail Glukhikh
375a2cc6ab
Build fix (AdditionalResolveDescriptorRendererTestGenerated)
2016-10-07 17:04:29 +03:00
Yan Zhulanow
16a9941549
Kapt: Allow to make CompilerConfiguration mutable again
...
(cherry picked from commit 0780de8)
(cherry picked from commit 95dde72)
2016-10-07 16:28:18 +03:00
Denis Zharkov
e05e0ec921
Optimize method count for collection stubs
...
Do not generate stubs if they're already present in superclasses
#KT-13698 In Progress
2016-10-07 11:59:15 +03:00
Mikhail Glukhikh
70949d10da
Refactoring + minor fixes: destructure intention
2016-10-06 21:16:46 +03:00
Mikhail Glukhikh
de865c6d46
getUseScope() fixed for destructuring declarations #KT-14181 Fixed
2016-10-06 21:03:24 +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
Mikhail Glukhikh
df0cf3da84
"Simplify using destructuring declaration" is now applicable for function literals #KT-13941 Fixed
2016-10-06 21:03:08 +03:00
Alexander Udalov
1e51ba7d00
Run classifier usage checkers for ambiguous references when possible
...
See comment in getReferencedClassifier and importJavaSamInterface.kt for
explanation
2016-10-06 14:40:21 +03:00
Alexander Udalov
ec53efd869
Run classifier usage checkers after all imports are resolved
...
Otherwise the diagnostic was not reported on an unused import of a deprecated
class in diagnostic tests, see the test case
2016-10-06 14:40:20 +03:00
Alexander Udalov
f7b4d7d35b
Move ClassifierUsageChecker and DeclarationChecker to checkers/
2016-10-06 14:40:20 +03:00
Alexander Udalov
0905b361d0
Drop LazyTopDownAnalyzerForTopLevel
...
Replace it everywhere with LazyTopDownAnalyzer
2016-10-06 14:40:20 +03:00
Alexander Udalov
9c70094ceb
Move resolveImportsInAllFiles to LazyTDA#analyzeDeclarations
...
This does not change the behavior: in the other usage of analyzeDeclarations,
a local class is being resolved and therefore TopDownAnalysisContext there does
not contain any files where imports would be resolved
2016-10-06 14:40:20 +03:00
Alexander Udalov
7070b88ea4
Move PlatformToKotlinClassMap out from ModuleParameters
...
Configure it in the same way as other platform-specific components instead,
simplify some code
2016-10-06 14:40:20 +03:00
Alexander Udalov
b77388bd48
Pass PlatformToKotlinClassMap instance to PlatformTypesMappedToKotlinChecker
...
The purpose of this change is to allow PlatformToKotlinClassMap to be removed
from ModuleDescriptor
2016-10-06 14:40:19 +03:00
Denis Zharkov
7353b08f09
Change parsing of statements starting with annotations
...
If a block statement starts with annotations treat them as they
belong to node of the statement rather than to the closest prefix expression
#KT-10210 Fixed
2016-10-05 10:29:29 +03:00
Denis Zharkov
001a058529
Remove effectively dead code in parser
...
`parseLabeledExpression` can only be called from `parsePrefixExpression`,
but the latter in the beginning tries to parse annotated expression,
thus advances any number of AT symbols
2016-10-05 10:29:29 +03:00
Dmitry Jemerov
d8b0c7aaec
Binding trace filtering: do not calculate diagnostics if no one is going to query them
2016-10-04 18:50:30 +02:00
Dmitry Jemerov
b365e547c4
DelegatingBindingTrace: remove unnecessary secondary constructor
2016-10-04 18:50:30 +02:00
Dmitry Jemerov
bcde67dc91
DelegatingBindingTrace: J2K
2016-10-04 18:50:30 +02:00
Dmitry Jemerov
9e6f03cd94
DelegatingBindingTrace: rename to .kt
2016-10-04 18:50:30 +02:00
Valentin Kipyatkov
af0b027952
All operator usages are searched with new searcher
2016-10-04 19:34:58 +03:00
Alexander Udalov
df680305ba
Improve diagnostic message for UNSUPPORTED_FEATURE
...
Render lowercase words separated by spaces instead of CamelCase in the
diagnostic message
2016-10-04 10:24:43 +03:00
Alexander Udalov
73652f309f
Do not create synthesized equals/hashCode/toString in data classes in compatibility mode
...
To simplify migration from 1.0 to 1.1, do not allow data classes to
automatically implement abstract equals/hashCode/toString declared in
super-interfaces (KT-11306) if "-language-version 1.0" is specified
2016-10-04 10:24:41 +03:00
Dmitry Petrov
06101dba52
KT-13961 REDECLARATION not reported on private-in-file 'foo' vs public 'foo' in different file
...
Private-in-file declarations conflict with public overload-equivalent declarations
in other files in the same package.
Move functions for grouping possible redeclarations to OverloadResolver
(since they are used only there).
Refactor redeclarations / conflicting overloads reporting.
2016-10-03 11:50:29 +03:00
Alexander Udalov
214abea4d6
Minor, introduce DeclarationProviderFactory.EMPTY
2016-10-02 21:03:35 +03:00
Alexander Udalov
0ed9897b03
Minor refactorings related to PackagePartProvider and implementations
...
- Document what exactly should findPackageParts return
- Make EMPTY a named object instead of a val in the companion
- Do not use JvmPackagePartProvider in tests where Empty works fine
- Add a couple default values to arguments of setupResolverForProject
2016-10-02 21:03:34 +03:00
Alexander Udalov
610c549225
Filter out equivalent calls before reporting "none applicable"
...
If a module is configured in such a way that the same function appears multiple
times via different dependencies, it's not helpful to report "none of the
following functions can be called", listing the same function multiple times
2016-10-02 21:03:30 +03:00
Alexander Udalov
9fb9c12f5e
Inline LazyTopDownAnalyzerForTopLevel#analyzeFiles
...
To make module initialization more explicit and configurable (especially in
TopDownAnalyzerFacadeForJVM)
2016-10-02 21:03:27 +03:00
Alexander Udalov
87fe6c41df
Drop ExternalDeclarationsProvider
...
It was added for Android extensions, but now another mechanism is used there
(PackageFragmentProviderExtension), and there were no other implementations of
ExternalDeclarationsProvider in the project
2016-10-02 21:03:19 +03:00
Alexander Udalov
1d6abc32bc
Minor, delete ModuleContext#builtIns
2016-10-02 21:03:18 +03:00
Valentin Kipyatkov
a55273646a
Fixed check for convention operator
2016-09-30 21:37:48 +03:00
Valentin Kipyatkov
17adee68cd
Fixed optimize imports for operators
2016-09-30 21:37:47 +03:00
Mikhail Glukhikh
725df49c8c
KT-9839: intention introduced: convert secondary constructor to primary one #KT-9839 Fixed
...
(cherry picked from commit f3fa779)
2016-09-30 16:39:24 +03:00
Mikhail Glukhikh
7f50e6e70e
KT-9839: intention introduced: convert primary constructor to secondary one
...
(cherry picked from commit 93aaa48)
2016-09-30 16:39:01 +03:00
Denis Zharkov
d4418d5686
Prohibit not-Unit suspend functions
...
#KT-13560 Fixed
2016-09-30 12:25:59 +03:00