Nikolay Krasko
a95ec598f2
Refactoring: move accessor name generators to companion object for reuse
2018-05-17 12:27:28 +03:00
Dmitry Savvinov
70622ff668
Introduce -Xoutput-imports mode of JVM compiler
...
In this mode, instead of analyzing files and generating bytecode for
them, compiler just saves imports of each file in JSON map of form
'<path to file> -> [<import1>, <import2>, ...]'
It is needed for some external tools, notably for Google3 toolchain.
2018-05-15 15:36:14 +03:00
Alexander Udalov
1719eecb67
Minor, init slice debug names for FilesByFacadeFqNameIndexer
2018-05-04 13:48:24 +02:00
Ilya Chernikov
15f9ad9531
Implement quick non-script detection and lazy script discovery..
...
so ".kt" and ".java" files are not considered as scripts and quickly
filtered out, and for the other files the the checks are implemented
using sequences, mechanisms provided to supply script definitions
lazily, and script discovery is implemented using this mechanisms.
2018-05-03 22:15:09 +02:00
Ilya Chernikov
a29411a211
Process script templates everywhere properly:
...
- add options to disable scripting plugin and standard script definition
- move standard definition adding logic into appropriate place
- fix logic of scripting plugin loading
- add standard script definition on the environment creation to
ensure compatibility with all usages
- fix testdata
- some minor fixes
2018-05-03 22:15:09 +02:00
Alexander Udalov
adb15d2d1a
Do not report JvmOverloads warning on actual function with expected defaults
...
#KT-23910
2018-04-30 15:26:50 +02:00
Denis Zharkov
96ab705de1
Use PsiField::computeConstantValue to avoid building AST
2018-04-28 17:12:52 +03:00
Denis Zharkov
0788afe92c
Avoid computing AST for IdentifierChecker
...
Basically, it's unnecessary to check anything when analysing stubs,
but it's complicated now to avoid that, so we just postpone
computing AST until reporting happens
2018-04-28 17:12:52 +03:00
Alexander Udalov
361f686124
Move ModuleMapping and BinaryModuleData to metadata.jvm
2018-04-23 18:42:32 +02:00
Alexander Udalov
d0544a148a
Minimize dependencies of ModuleMapping
...
Prepare it to be moved to metadata.jvm
2018-04-23 18:42:32 +02:00
Vyacheslav Gerasimov
4299455dc1
as32: Update to AS 3.2 C10
2018-04-13 21:33:03 +03:00
Dmitry Savvinov
934c56a4da
Wire StorageManager into a ClassTypeConstructorImpl and ClassDescriptorImpl
2018-04-12 13:44:10 +03:00
Nicolay Mitropolsky
e7c3086db7
182: dep javax.annotation:jsr250-api:1.0 added to compiler/frontend.java
2018-04-11 16:28:43 +03:00
Alexey Sedunov
a9cdccc6de
as31: Misc: Fix compilation
2018-04-11 16:28:18 +03:00
Mikhael Bogdanov
b785aca98e
172: Fix compilation
2018-04-11 16:28:12 +03:00
Mikhael Bogdanov
56d1184515
Restrict conditions for @JvmDefault super calls
...
Condition was too strict
if @JvmDefault implicitly hidden by class in inheritance.
Diagnostic is redundant cause there isn't breaking
change depending on interface method generation strategy and
delegating stub generation in inheriting class.
2018-04-10 16:33:26 +02:00
Mikhael Bogdanov
e23c406285
Minor. Avoid recursion
2018-04-10 16:33:25 +02:00
Mikhael Bogdanov
6d1af263ba
Restrict conditions for @JvmDefault super calls
...
Condition was too strict if we actually make super call
through super class. Diagnostic is redundant cause there isn't breaking
change depending on interface method generation strategy.
2018-04-10 16:33:25 +02:00
Mikhael Bogdanov
d788b3b6f9
Add warning on overriding java default by non @JvmDefault method
2018-04-09 18:13:35 +02:00
Mikhael Bogdanov
cb9c1ae104
Support default method super calls within @JvmDefault ones
2018-04-09 18:13:34 +02:00
Mikhael Bogdanov
942dd8a67c
Properly calculate this for super call
2018-04-09 18:13:34 +02:00
Mikhael Bogdanov
2c56f0bfd3
Require 'jvmDefaultFlag' for default super calls
2018-04-03 19:18:19 +02:00
Mikhael Bogdanov
db59e916fb
Inline utility method
2018-04-03 19:18:18 +02:00
Mikhael Bogdanov
3f5fea05de
Write 'RequireKotlin' annotation on @JvmDefault members
2018-04-03 19:18:17 +02:00
Mikhael Bogdanov
23e8adb793
Add custom diagnostic checker for @JvmDefault annotation
2018-04-03 19:18:17 +02:00
Mikhael Bogdanov
f290b325ee
Remove @JvmDefault members from delegation
2018-04-03 19:18:14 +02:00
Mikhael Bogdanov
1d3e57acee
Add @JvmDefault diagnostics
2018-04-03 19:18:10 +02:00
Mikhael Bogdanov
63afd37cdd
Remove unused parameters, compiler keys and obsolete code
2018-04-03 19:18:10 +02:00
Dmitry Jemerov
20cd193030
Delete remains of external annotations support from compiler
2018-03-29 09:45:07 +02:00
Alexander Udalov
71e9ee7437
Minor, rephrase diagnostic message on repeatable annotations
2018-03-26 16:35:17 +02:00
Mikaël Peltier
3a50d0d78f
KT-22063 Add intrinsics for javaObjectType and javaPrimitiveType
...
Fix of https://youtrack.jetbrains.com/issue/KT-22063
2018-03-26 15:52:19 +02:00
Alexey Tsvetkov
8a82c1618c
Use Plugins DSL in Kotlin Gradle scripts
...
When plugins DSL is used, there is no need to
manually generate typesafe accessors for extensions and
conventions (by running `./gradlew kotlinDslAccessorsSnapshot`).
2018-03-26 16:09:29 +03:00
Nikolay Krasko
0b0eb210b6
Refactoring: get module language settings in ResolverForProjectImpl
2018-03-23 18:04:06 +03:00
Nikolay Krasko
586860e03a
Refactoring: store correspondent module info in module content
2018-03-23 18:04:01 +03:00
Nikolay Krasko
dced45d1bf
Refactoring: rename AnalyzerFacade -> ResolverForModuleFactory
2018-03-23 18:03:52 +03:00
Denis Zharkov
c334f46825
Avoid retaining reference to ProtoBuf.Package in JvmPackagePartSource
...
Otherwise, 2e933a165a doesn't help
2018-03-15 18:59:44 +03:00
Alexander Udalov
3f3e05a9d2
Move essential metadata-related classes to 'metadata' and 'metadata.jvm'
2018-03-14 12:25:16 +01:00
Alexander Udalov
88dea9aa70
Move NameResolver to module 'metadata' and J2K
...
Also move NameResolverImpl to 'metadata' and JvmNameResolver to
'metadata.jvm'
2018-03-14 12:25:16 +01:00
Alexander Udalov
27ad4f7d5d
Move ProtoBuf classes to package org.jetbrains.kotlin.metadata
2018-03-14 12:25:10 +01:00
Alexander Udalov
7e1b1db7cc
Minor, don't use BitEncoding where it's not necessary
2018-03-14 12:25:05 +01:00
Alexey Sedunov
4609b2ae37
Navigation: Resolve typealiased SAM-references to type alias declaration
...
#KT-15302 Fixed
2018-03-06 15:15:42 +03:00
Pavel V. Talanov
27d7bb595f
CliLightClassGenerationSupport: correctly find facade files
...
This fixes a problem where JvmPackageName annotation could force file
facades to be in the package different to declared kotlin package
2018-03-06 12:07:12 +01:00
Yan Zhulanow
34d1611ed4
Add Pill support to compiler and IDE modules
2018-03-02 03:15:17 +03:00
Mikhail Zarechenskiy
f23b5103ec
Avoid non-null assertions for inline classes based on nullable types
...
Note that there are more places where assertions for inline classes should refined:
- lateinit vars
- values that come from Java
- type casts (interfaces to inline class type)
2018-02-20 14:41:48 +03:00
Dmitry Savvinov
0929673576
Refactor DataFlowValueFactory into proper component
2018-02-20 13:11:33 +03:00
Mikhael Bogdanov
31c63dea50
Add jvm target 10 tests on jdk 10
2018-02-16 14:22:04 +01:00
Mikhail Zarechenskiy
1ac4e9755a
Generate synthetic unbox method for each wrapper of inline class
2018-02-09 02:08:11 +03:00
Alexander Udalov
7123202670
Add getExtensionOrNull utility for protobuf messages
2018-02-08 17:08:33 +01:00
Alexander Udalov
890374a42a
Load module annotations for JVM and JS modules in compiler
...
#KT-22759 In Progress
2018-02-08 17:08:33 +01:00
Alexander Udalov
b4ac852392
Add packageProto/nameResolver to JvmPackagePartSource
...
May be useful for loading platform-specific protobuf extensions (such as
package_module_name on JVM) when analyzing deserialized top level
members
2018-02-08 17:07:22 +01:00