Alexander Udalov
97f2051a03
Add debugName to ModuleMapping
2016-10-02 21:03:33 +03:00
Alexander Udalov
74ad6b1410
Drop obsolete logic related to obsolete package parts
...
Filtering out obsolete package parts in incremental compilation was necessary
before the big refactoring of package parts, when package parts had been
compiled together into a package class
2016-10-02 21:03:31 +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
a5a874f23f
Move module creation into TopDownAnalyzerFacadeForJVM#analyzeFilesWithJavaIntegration
...
The only place where the logic has changed is in AbstractDiagnosticsTest, where
modules are already created and sealed before the analysis. Copy-paste the
container creation logic there (it's almost fine because it's also present in a
bunch of other tests), and simplify it: get rid of incremental compilation and
other stuff irrelevant for diagnostic tests.
This is needed to make analyzeFilesWithJavaIntegration configure the module
properly before sealing it
2016-10-02 21:03:27 +03:00
Alexander Udalov
596fdab2f2
Extract container for single-module top-down analysis
2016-10-02 21:03:26 +03:00
Alexander Udalov
2699356ce3
Simplify JavaClassFinderPostConstruct, inline javaAnalysisInit
2016-10-02 21:03:25 +03:00
Alexander Udalov
278941a8a1
Deduplicate code in container creation for JVM analysis
2016-10-02 21:03:24 +03:00
Alexander Udalov
0250ea861c
Simplify return types of createContainer* functions
2016-10-02 21:03:23 +03:00
Alexander Udalov
9cfe0be98e
Prettify TopDownAnalyzerFacadeFor{JVM,JS}
2016-10-02 21:03:22 +03:00
Alexander Udalov
4467e127f0
J2K TopDownAnalyzerFacadeFor{JVM,JS}: convert to Kotlin
2016-10-02 21:03:21 +03:00
Alexander Udalov
b34150e1ce
J2K TopDownAnalyzerFacadeFor{JVM,JS}: rename files
2016-10-02 21:03:21 +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
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
Denis Zharkov
5381c06936
Improve 1.0-compatibility mode for JDK dependent members
...
Just reporting error by call checker may be too restrictive
in case there are some extensions that can be used successfully
Solution is to annotate additional members with
@Deprecated(level=Error) + @kotlin.internal.LowPriorityInOverloadResolution
2016-09-22 15:40:37 +03:00
Denis Zharkov
a7dedfab70
Move JvmBuiltIns initialization after container setup
...
It will be used in the further commits to initilize built-ins instance
with components as arguments
2016-09-22 15:40:37 +03:00
Dmitry Petrov
07198cf86d
SAM constructors for type aliases.
2016-09-22 10:38:34 +03:00
Pavel V. Talanov
92b62f879b
JavaClassImpl: add assertion on querying members of light classes
...
Hopefully this assertion happens before deadlock KT-12966
2016-09-20 19:09:05 +03:00
Pavel V. Talanov
631603c015
J2K JavaClassImpl: rename file
2016-09-20 19:09:04 +03:00
Pavel V. Talanov
724b0322c0
J2K JavaClassImpl: convert code
2016-09-20 19:09:03 +03:00
Dmitry Petrov
796d11c860
ClassDescriptor is now a super-interface for ClassConstructorDescriptor and TypeAliasConstructorDescriptor.
2016-09-20 10:55:36 +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
Alexey Tsvetkov
6ebb50751c
Remove source annotations when copy class with kapt2
...
Writing source annotations enables incremental compilation for kapt2.
However they are not needed in bytecode, so we remove them when
copying classes.
# Conflicts:
# compiler/cli/src/org/jetbrains/kotlin/cli/jvm/K2JVMCompiler.kt
# compiler/frontend.java/src/org/jetbrains/kotlin/config/JVMConfigurationKeys.java
2016-09-14 13:52:56 +03:00
Yan Zhulanow
975364b2ed
Kapt: Provide SourceRetentionAnnotationHandler for incremental compilation.
...
Collect annotations with the "SOURCE" retention.
(cherry picked from commit 6ef66e7)
2016-09-10 17:36:15 +03:00
Yan Zhulanow
941d016cef
Kapt: abort compilation on error in annotation processing stage (KT-13622)
...
(cherry picked from commit f78b8b4)
2016-09-10 17:36:15 +03:00
Ilya Gorbunov
cf898ae357
Exclude exceptions from java.lang package for which type aliases exist in kotlin package.
...
Add relevant note to the type aliases.
2016-08-17 12:40:50 +03:00
Alexander Udalov
bd88b0941d
Fix incorrect unsupported error on synthetic extension call on LHS of ::
...
#KT-13271 Fixed
2016-08-15 19:41:47 +03:00
Pavel V. Talanov
30892e0154
KtLightClassForDecompiledDeclaration is now marked by KtLightClassMarker
...
Rename: KtJavaMirrorMarker -> KtLightClassMarker
Introduce code to be able to tell light classes from source and binaries apart in 'frontend.java'
2016-08-03 17:29:06 +03:00
Stanislav Erokhin
19e4dbc37c
Refactoring. Move functionTypeResolveUtils.kt to resolution module.
2016-07-29 17:53:11 +03:00
Pavel V. Talanov
0294551433
Refactor: move OldPackageFacadeClassUtils to 'frontend.jvm' module
2016-07-28 18:00:48 +03:00
Mikhail Glukhikh
6e391854a0
Data flow values refactoring: removed DataFlowValue.kind.isStable, renamed DataFlowValue.isPredictable -> DataFlowValue.isStable
2016-07-28 15:14:48 +03:00
Alexander Udalov
a92f0a0446
Do not report "reflection is not available" on built-in sources
2016-07-22 18:13:39 +03:00
Denis Zharkov
2d42ba23b3
Minor. Replace TraitImpl -> DefaultImpls, Trait -> Interface
...
There are still a lot of trait word entries in the source code,
only some of them got replaced here
2016-07-12 16:27:48 +03:00
Alexander Udalov
ceb54492e6
Get rid of CallChecker#checkPropertyCall, create fake ResolvedCall
2016-07-07 13:55:48 +03:00
Alexander Udalov
a533f8597d
Fix debug names for some slices
...
Also move RUNTIME_ASSERTION_INFO and LOAD_FROM_JAVA_SIGNATURE_ERRORS to a
single class for simplicity
2016-07-05 18:18:26 +03:00
Alexander Udalov
95291cdc18
Minor, move some checkers to more appropriate places
2016-06-29 22:03:35 +03:00
Alexander Udalov
ff72348105
Report error on protected setter call from super's companion
...
#KT-12847 Fixed
2016-06-29 22:03:35 +03:00
Alexander Udalov
77bb691d4e
Rename SymbolUsageValidator -> ClassifierUsageChecker
...
Also validateTypeUsage -> check
2016-06-29 22:03:34 +03:00
Alexander Udalov
6ba32ed624
Refactor CallChecker and subclasses
...
Encapsulate everything that is needed in checkers into CallCheckerContext. Pass
an instance of this context instead of BasicCallResolutionContext to checkers.
Also pass an instance of the element to report errors on: this is useful
because before this, every checker had its own way of determining where should
the error be reported on. Some of them, for example, were not doing anything if
Call#calleeExpression returned null, which is wrong, see operatorCall.kt
#KT-12875 Open
2016-06-29 19:20:00 +03:00
Nikolay Krasko
51a2abdbc2
Minor: remove outdated comment
2016-06-29 16:16:32 +03:00
Ilya Chernikov
8dac72f465
Add support for script classfiles caching
2016-06-25 22:24:34 +03:00
Ilya Chernikov
082290f8e3
Refactor script dependencies management
2016-06-25 22:24:23 +03:00
Mikhael Bogdanov
93a770fcc8
Code clean
2016-06-24 17:05:53 +03:00
Mikhael Bogdanov
7baf70e8fa
Support reified extension properties
2016-06-24 17:05:51 +03:00
Mikhael Bogdanov
5a2e00d2ad
Base support of StackValue.Property inlining
2016-06-24 17:05:50 +03:00
Mikhael Bogdanov
db5d9940df
Added 'isInline' implementation to property accessor descriptors
2016-06-24 17:05:48 +03:00
Pavel V. Talanov
bafe8e55ce
Create SyntheticMemberDescriptor interface
...
Implement this interface by sam adapters/constructors and use it in navigation
#KT-11708 Fixed
2016-06-20 20:15:34 +03:00
Alexander Udalov
da332d1a27
Validate "-jvm-target" value in CLI, improve message
2016-06-16 16:51:18 +03:00
Mikhael Bogdanov
fc8058848f
Added classVersion to KotlinJvmBinaryClass
2016-06-15 13:43:26 +03:00