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
Denis Zharkov
96186c6217
Prohibit star-projections in last parameter of suspend functions
2016-09-30 12:25:59 +03:00
Dmitry Petrov
bd95d2ef4c
KT-14071 Type alias cannot be used as a qualifier for super
...
Use corresponding class for type alias in super qualifier resolution.
2016-09-30 10:17:30 +03:00
Mikhail Glukhikh
f95dcad179
CFA minor: retain initialization state while analyzing variable declaration
...
(cherry picked from commit c89f4db)
2016-09-29 15:57:01 +03:00
Mikhail Glukhikh
436b0ec873
CFA merge for definition / initialization : more accurate handling of unknown variables #KT-13969 Fixed
...
(cherry picked from commit 4a96589)
2016-09-29 15:56:47 +03:00
Denis Zharkov
c884cffeea
Prohibit return type mismatch for delegation members
...
#KT-13952 Fixed
#KT-13005 Fixed
2016-09-28 11:40:20 +03:00
Denis Zharkov
ddb7a6aa13
Minor. Extract subinterface for specific strategy
...
It contains only methods related to explicitly declared overrides
2016-09-28 11:40:20 +03:00
Alexey Sedunov
22271f0af0
Pull Up/Push Down/Extract Super: Show member dependencies in the refactoring dialog
2016-09-27 21:26:29 +03:00
Alexey Sedunov
8a5628cde5
Pull Up/Extract Super: Support members declared in the companion object of the original class
2016-09-27 21:26:28 +03:00
Alexey Sedunov
982d4d4ead
Pull Up/Extract Super: Support properties declared in the primary constructor
2016-09-27 21:26:27 +03:00
Mikhail Glukhikh
025d063b27
UNNECESSARY_LATEINIT: do not report if property is not initialized at use-site #KT-13806 Fixed
...
(cherry picked from commit 09c0865)
2016-09-27 18:49:02 +03:00
Mikhail Glukhikh
4da9a101cf
UNNECESSARY_LATEINIT warning introduced #KT-13295 Fixed
...
(cherry picked from commit 88f9938)
2016-09-27 18:48:50 +03:00
Pavel V. Talanov
32daf048c2
PlatformConfigurator: create container for each platform (it contains static services, mostly checkers) ahead of time
2016-09-26 14:42:57 +03:00
Alexander Udalov
9bc6d6ae92
Remove recursion workaround from DeprecatedClassifierUsageChecker
2016-09-24 11:26:57 +03:00
Alexander Udalov
dca99c3fd2
Move ClassifierUsageChecker invocation lower in LazyTopDownAnalyzer
...
Invoking checkers right after resolution of qualified expressions is too early:
DeprecatedClassifierUsageChecker tries to load the annotations of a referenced
classifier to report deprecation, and that may result in building light classes
for not yet analyzed declarations
#KT-13954 Fixed
2016-09-24 11:26:56 +03:00
Pavel V. Talanov
8f5725345f
ModuleDescriptor: invert "friends" relation
...
Fixes memory leak caused by modules storing their friends (which can be potentially recreated many times)
2016-09-22 18:20:43 +03:00
Mikhail Glukhikh
68f0953b02
Random-order variable sets are no more in use in CFG #KT-13990 Fixed
...
(cherry picked from commit fc89385)
2016-09-22 13:32:01 +03:00
Dmitry Petrov
07198cf86d
SAM constructors for type aliases.
2016-09-22 10:38:34 +03:00
Denis Zharkov
6663054f4d
Fix false positive "Cannot capture" error reporting
...
There is no need to report an error in case of non-top-level
capture conversion, just don't add relevant capture type in the system instead
If system can be solved successfully without captured type, then it's just fine
(see KT-13950)
In case of contradiction TYPE_INFERENCE_PARAMETER_CONSTRAINT_ERROR is reported
#KT-13950 Fixed
2016-09-21 18:05:26 +03:00
Denis Zharkov
4431c6ad02
Fix inference when captured type is used as a lambda parameter type
...
Use lower approximation bound to obtain acceptable types for lambda parameters
those types depend on captured type
#KT-12238 Fixed
#KT-10627 Fixed
2016-09-21 18:05:26 +03:00
Mikhail Zarechenskiy
8a0107ea5f
Move property with template to script definition interface
2016-09-20 16:23:42 +03:00
Mikhail Zarechenskiy
b18cbc37c6
Do not generate properties from script constructor
...
From now all script parameter properties are generated by template class
2016-09-20 16:22:42 +03:00
Mikhail Zarechenskiy
0ba2d374bc
Create standard script definition from standard template
...
Now each script without specified template has a StandardSriptTemplate
class as a base one. This allows to generalize script codegen and
resolve.
2016-09-20 15:44:44 +03:00
Nikolay Krasko
ff9f3694f1
Problem: remove static import (temp workaround)
...
See KT-13954 for details
2016-09-20 15:24:55 +03:00
Nikolay Krasko
d5ae37d33a
Problem: remove static import (temp workaround)
2016-09-20 15:10:57 +03:00
Dmitry Petrov
bfcf7d9890
DM 19.09.2016: typealiases private in file are resolved as classes.
...
Add test for typealias private in file.
2016-09-20 14:42:29 +03:00
Dmitry Petrov
dac9d8b845
Additional checks for type alias constructors.
2016-09-20 10:55:36 +03:00
Dmitry Petrov
796d11c860
ClassDescriptor is now a super-interface for ClassConstructorDescriptor and TypeAliasConstructorDescriptor.
2016-09-20 10:55:36 +03:00
Dmitry Petrov
b31ab729de
Containing declaration for TypeAliasConstructorDescriptor
...
is a corresponding TypeAliasDescriptor.
2016-09-20 10:55:36 +03:00
Denis Zharkov
72d027d968
Introduce language feature DestructuringLambdaParameters
...
#KT-5828 Fixed
2016-09-19 20:22:57 +03:00
Denis Zharkov
e975d32196
Implement resolution of desctructuring declarations in lambdas
...
#KT-5828 In Progress
2016-09-19 20:22:57 +03:00
Denis Zharkov
3df3187e25
Minor. Refine variable name: innerScope -> headerScope
2016-09-19 20:22:57 +03:00
Denis Zharkov
75a51d915f
Implement parsing of desctructuring declarations in lambdas
...
#KT-5828 In Progress
2016-09-19 20:22:57 +03:00
Denis Zharkov
000ba33f59
Minor. Prettify value parameters' resolution parts
2016-09-19 20:22:57 +03:00
Denis Zharkov
435cafed99
Minor. Cleanup KotlinParsing code
2016-09-19 20:22:57 +03:00
Nikolay Krasko
131e77927a
Skip lazy parsable lambdas without actually parsing them
2016-09-19 18:53:51 +03:00
Alexander Udalov
c91f77f2a4
Rename LanguageFeatureSettings -> LanguageVersionSettings
2016-09-19 15:21:24 +03:00
Alexander Udalov
aec31bd88f
Uninherit LanguageVersion from LanguageFeatureSettings
...
Introduce LanguageVersionSettingsImpl to store everything related to the
selected language version
2016-09-19 15:20:47 +03:00
Dmitry Petrov
34240e2ff9
Create special descriptor for an object corresponding to type alias.
2016-09-16 15:44:44 +03:00
Mikhail Glukhikh
c1296e2134
Retain nullability information for type alias arguments which are in turn type aliases #KT-13835 Fixed
2016-09-16 10:30:43 +03:00