Alexey Tsvetkov
82eb7c17e6
Convert TransformationMethodVisitor: step 2
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
56b72c96eb
Convert TransformationMethodVisitor: step 1
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
50d8fe611c
Minor fixes after review
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
d54ce2da6f
Exclude nested classes of private classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
64380f55d2
Report locations of errors in ABI classes tests
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
9dd09151f0
Add tests for compilation against abi classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
8992ee6280
Add tests for non-compatible ABI changes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
5891617674
Exclude clinit from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
519211036d
Exclude synthetic classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
fe047a0092
Minor: extract function
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
f231817559
Delay I/O when transforming ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
d74185a74d
Remove unused cosntant pool entries from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
3a29b337a0
Exclude private typealiases from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
1f5ca7274d
Exclude local and private classes from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
7c2f7cab9a
Exclude non-inline method bodies from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
903f6bc79b
Exclude private members from ABI classes
2018-12-11 22:48:53 +03:00
Alexey Tsvetkov
33faa00184
Add plugin for JVM ABI classes generation
...
#KT-25128 Fixed
ABI class generation is implemented as a compiler plugin.
Command-line usage:
1. Add a path to 'jvm-abi-gen.jar' to the plguin classpath argument
(`-Xplugin`). By default the jar is located at
'kotlinc/lib/jvm-abi-gen.jar' in the kotlinc distribution archive.
2. Specify an output directory for ABI classes via
`-Pplugin:org.jetbrains.kotlin.jvm.abi:outputDir=<DIR>`.
2018-12-11 22:48:53 +03:00
Mikhail Glukhikh
7fcd29843e
Fix JS compilation for branch 181
2018-12-11 22:14:44 +03:00
Mikhail Glukhikh
588e94b917
File rename: TargetPlatform.kt -> PlatformConfiguratorBase.kt
...
Made to match file content better
2018-12-11 22:07:41 +03:00
Simon Ogorodnik
e3aed04d96
Extract module info & target platform to separate frontend.common
2018-12-11 22:07:41 +03:00
Vyacheslav Gerasimov
cd614b5bf8
Build: fix missing dx sources
2018-12-11 21:59:52 +03:00
Vyacheslav Gerasimov
02fbdc54d9
Build: Fix up-to-date for :kotlin-compiler-client-embeddable:shadowJar
...
The task was never up-to-date because default jar and shadowJar tasks overwritten each other's output
#KT-28656 Fixed
2018-12-11 18:11:53 +03:00
Ilya Chernikov
abc13589c8
Fix locking in script definition provider
...
fixes possible parallel modifications on definitions loading, e.g.
as in https://github.com/shyiko/ktlint/issues/287
2018-12-11 15:20:08 +01:00
Mikhail Glukhikh
b143a1c8f7
For each parameter not used: handle char sequences correctly
...
An enhancement for KT-27209
2018-12-11 16:42:04 +03:00
Mikhail Glukhikh
833f564f0e
Disable extract actions on non-JVM classes #KT-28476 Fixed
2018-12-11 16:42:03 +03:00
Mikhail Glukhikh
11909a86a8
For each parameter not used: introduce "replace with repeat"
...
An enhancement for KT-27209
2018-12-11 16:42:03 +03:00
Mikhail Glukhikh
e06c995516
For each parameter not used: cleanup
2018-12-11 16:42:03 +03:00
Mikhail Glukhikh
9aa1d1495b
Redundant arrow: don't report on forEach call with underscore
...
#KT-27209 Fixed
2018-12-11 16:42:03 +03:00
Mikhail Glukhikh
c8c485d27e
Redundant arrow: support removing of 'it ->' #KT-28631 Fixed
2018-12-11 16:42:03 +03:00
Denis Zharkov
92150d847a
Unwrap InvocationTargetException in dependency injection
...
^KT-28348 Fixed
2018-12-11 16:12:28 +03:00
Denis Zharkov
957e7cd5f3
Optimize searching constructor delegation calls
...
^KT-28755 Fixed
2018-12-11 16:12:28 +03:00
Denis Zharkov
9e07b0d31a
Minor. Reformat usagesSearch/utils.kt
2018-12-11 16:12:28 +03:00
Roman Artemev
2b436b493c
Move test from js to common part
2018-12-11 16:11:01 +03:00
Alexey Tsvetkov
b6c975739c
Deprecate AP discovery in compile configurations in Gradle
...
#KT-24368 Fixed
2018-12-11 16:08:16 +03:00
Alexey Tsvetkov
d6459e6c49
Add option to disable AP discovery in compile classpath
...
#KT-24530 Fixed
To disable discovery and enable avoidance for kapt tasks,
use "kapt.includeCompileClasspath = false"
2018-12-11 16:08:16 +03:00
Simon Ogorodnik
445c85f829
Support overriding module/library/sdk for particular light PsiClass
...
To support light R classes
2018-12-11 15:46:11 +03:00
Ilmir Usmanov
7f9e91eabe
Use File.pathSeparator instead of :
2018-12-11 15:08:34 +03:00
Dmitry Petrov
08d1c47ac3
KT-14227 Intrinsify MutableMap.set
...
This fixes the most common (and rather annoying) bug in augmented
assignment desugaring with collection element receiver.
Fix is somewhat hackish: introduce an intrinsic for MutableMap.set,
thus bypassing discrepancies in 'get' and 'set' call generation.
Fixing it properly requires design decisions for corner cases where
ad hoc augmented assignment desugaring with collection element receiver
"accidentally" works, producing identical objects and vararg arrays for
arguments of 'get' and 'set'.
2018-12-11 12:43:03 +03:00
Yan Zhulanow
9a98a4525b
ServiceLoaderLite: Support paths with spaces (KT-28527)
2018-12-11 17:45:46 +09:00
Mikhail Zarechenskiy
e8a8318ead
[NI] Fix input/output types for callable reference atom
...
Input and output types are crucial for type variable fixation order and
analysis of postponed arguments (callable references, lambdas).
Specifically, if there is non-fixed type variable inside input types of
a callable reference, then we'll postpone resolution for such callable
reference.
Initial example with the expected type `KMutableProperty1<*, F>` caused
problems because input types were computed incorrectly (while there
aren't input types here)
#KT-25431 Fixed
2018-12-11 11:33:29 +03:00
Mikhail Zarechenskiy
6ebbb6eae3
[NI] Fix not-null smartcast on intersection of nullable types
...
#KT-28670 Fixed
2018-12-11 11:29:59 +03:00
Mikhail Zarechenskiy
383c2d1bff
[NI] Take into account captured types for type depth computation
...
It's needed to estimate the count of steps for type approximation algorithm.
After the estimated count of steps, we consider such type recursive and this
algorithm returns some default value
#KT-28598 Fixed
2018-12-11 11:29:55 +03:00
Denis Zharkov
ddb4e8b128
Temporary remove some tests after a fix for KT-24937
...
Otherwise, our project is failed to be indexed
2018-12-11 09:45:39 +03:00
Denis Zharkov
5992896d76
Relax assertion in parser for a recovery case with annotations
...
^KT-24937 Fixed
2018-12-11 09:45:14 +03:00
Nicolay Mitropolsky
3727fabb0f
AddConstModifierFix and AddReifiedToTypeParameterOfFunctionFix updated to implement invokeImpl
2018-12-11 08:46:02 +03:00
Dmitry Batkovich
654f728c12
AddModifierFix and RemoveModifierFix made extend KotlinCrossLanguageQuickFixAction
2018-12-11 08:46:02 +03:00
Georgy Bronnikov
2b0ec8abe3
Update tests
2018-12-10 17:26:55 +03:00
Georgy Bronnikov
5dd9cfca4d
Repair after merge
2018-12-10 17:26:55 +03:00
Georgy Bronnikov
a695e21e44
Introduce IrLazyProperty
2018-12-10 17:26:55 +03:00
Georgy Bronnikov
f4a189fe82
Change order of arguments in IrValueParameter.copyTo
2018-12-10 17:26:55 +03:00