Yan Zhulanow
7bbf9861d0
Kapt3: Simplify handling of annotation processing exceptions
...
The previous handling method was unreliable ("Don't know how to render diagnostic of type KAPT3_PROCESSING_ERROR", exceptions being lost).
2017-05-04 19:59:30 +03:00
Alexey Tsvetkov
f8b785fc31
Test that Kapt3 IC removes stubs for dirty source files
2017-05-04 19:59:29 +03:00
Alexey Tsvetkov
5c041cb182
Kapt3: Remove source stubs together with the class files when .kt file is marked dirty (IC)
2017-05-04 19:59:29 +03:00
Yan Zhulanow
19c00abc62
Kapt3: Avoid annotation processing execution when possible (KT-17620)
...
Do not execute annotation processing if no stubs (and Java files) were changed since the previous execution.
2017-05-04 19:59:16 +03:00
Yan Zhulanow
c8d7c339cf
Kapt3: Modify kapt incremental tests in order to support kapt3
2017-05-04 19:00:43 +03:00
Yan Zhulanow
c18bf5088d
Kapt3: Support incremental compilation of Java stubs (KT-15151)
2017-05-04 19:00:42 +03:00
Yan Zhulanow
3bf534b392
Kapt3: Support apt modes
...
Allow to run kapt in "annotation processing only" and "stub generation only" modes in order to support incremental compilation in Gradle.
Unfortunately, annotation processing can't be done incrementally cause it uses all module files, but the stub generation can be done incrementally.
2017-05-04 19:00:41 +03:00
Yan Zhulanow
7a692b56f4
Add kapt3 module to non-compiler-tests
2017-05-04 18:46:44 +03:00
Yan Zhulanow
99a05f5d61
Kapt3: Convert reference to KMutableMap.Entry correctly (KT-17567)
2017-05-04 18:46:43 +03:00
Yan Zhulanow
254e8156ac
NoArg: Initialize properties in noarg constructor (KT-16692)
2017-05-04 18:46:42 +03:00
Yan Zhulanow
eba5baa7ff
Kapt3: Add Maven integration test
2017-05-04 18:46:41 +03:00
Anton Bannykh
7503376731
JS: unmute box/test/coroutinessuspendFunctionAsCoroutine/inlineTwoReceivers.kt
2017-05-04 16:47:00 +03:00
qx
a5dea7ef1c
Fixes after review: used getParentOfType
2017-05-04 16:11:18 +03:00
qx
079380c70d
Fixes after review: renamed to isMemberExtensionDeclaration
2017-05-04 16:11:18 +03:00
qx
0ba4a82ca6
Fixes after review: ConvertMemberToExtensionIntention.convert moved to companion object
2017-05-04 16:11:18 +03:00
qx
f163788821
Fixes after review: got rid of unused parameters
2017-05-04 16:11:17 +03:00
qx
f6fe1c50c2
Used ConvertMemberToExtensionIntention in MigrateExternalExtensionFix instead of manually creating extension method
2017-05-04 16:11:17 +03:00
qx
8ba61ce7aa
Fixed KT-15270 Quickfix to migrate from @native***
2017-05-04 16:11:17 +03:00
qx
11bc0d87b8
Fixes to AbstractQuickFixTest (full path to file and file separator)
...
The full path to file in getTestDataPath is necessary to show file diff link in exception when the test fails.
The File.separatorChar fixes tests on Windows machines.
2017-05-04 16:11:16 +03:00
qx
71de20b9e6
Retain javascript name from @native annotation
...
As the first part of KT-15257 JS: quickfix to migrate from @native to external
2017-05-04 16:11:16 +03:00
qx
c364e79557
Implemented @native-* annotation migration quickfix for extension functions
...
As the first part of KT-15270 Quickfix to migrate from @native***
2017-05-04 16:11:16 +03:00
Anton Bannykh
a71e5abb45
Update KotlinVersion.CURRENT to 1.1.4
2017-05-04 15:24:40 +03:00
Mikhail Glukhikh
1273166ed0
Do not report redundant else for enum / sealed from another module
...
Related to KT-17497
2017-05-04 14:17:43 +03:00
Mikhail Glukhikh
35754a98e7
KT-17497 related: introduce fix for REDUNDANT_ELSE_IN_WHEN
2017-05-04 14:17:42 +03:00
Mikhail Glukhikh
14886827a2
Introduce warning REDUNDANT_ELSE_IN_WHEN #KT-17497 Fixed
2017-05-04 14:17:41 +03:00
Mikhail Glukhikh
e53c548ead
Consider property external if all accessors are external #KT-13997 Fixed
2017-05-04 14:17:40 +03:00
Mikhail Glukhikh
b8af0f5922
J2K: move isEffectivelyExternal to kt-file, parameter -> receiver
2017-05-04 14:17:38 +03:00
Dmitry Petrov
d5feb2d6f4
Deep copy fixes + sanitize file names for module dumps
2017-05-04 13:51:17 +03:00
Dmitry Petrov
506941e7e0
Optimize range operations for 'until' extension from stdlib (KT-9900)
...
NB: for-in-until loop is generated as precondition loop, because the
corresponding range is right-exclusive (and thus we have no problems
with integer overflows).
2017-05-04 10:09:42 +03:00
Dmitry Petrov
b83620fdb9
Minor: DeepCopyIrTree: make some utility methods 'protected'
2017-05-04 09:33:03 +03:00
Dmitry Petrov
e600a1af30
Minor: IrDeclarationOrigin.NEW_INSTANCE_RECEIVER -> INSTANCE_RECEIVER
2017-05-04 09:33:03 +03:00
Dmitry Petrov
1eb693b8ee
Transform variable-as-function calls for extension functions
...
In the following code example
fun test(f: Any.() -> Unit) = 42.f()
front-end resolves variable-as-function call for 'f' as 'invoke'
with signature 'Function1<Any, Unit>#Any.() -> Unit'.
However, Function1<Any, Unit> has a single 'invoke' method
with signature 'Function1<Any, Unit>#(Any) -> Unit'.
This didn't cause any problems with loosely typed JVM and JS back-ends.
However, in IR with symbols this means a reference to non-existing
declaration.
2017-05-04 09:33:03 +03:00
Dmitry Petrov
7bd75df1f1
Minor: small refactorings in IrElementTransformerVoid
2017-05-04 09:33:03 +03:00
Dmitry Petrov
0203ba4dff
Use stable order when generating stubs for scope members
2017-05-04 09:33:03 +03:00
Dmitry Petrov
40939da9fb
Minor: DeclarationGeneratorExtension already extends Generator
2017-05-04 09:33:03 +03:00
Dmitry Petrov
17706d0fb6
Generate parameter declarations for synthetic members of enum classes
2017-05-04 09:33:03 +03:00
Dmitry Petrov
c4346f95ff
Minor: fix testData format local delegated properties with 'suspend'
2017-05-04 09:33:03 +03:00
Dmitry Petrov
8b32d54a62
Minor: fix testData format for IR source range tests
2017-05-04 09:33:03 +03:00
Dmitry Petrov
78a601af87
Generate parameter declarations for fake overrides
2017-05-04 09:33:03 +03:00
Dmitry Petrov
fa4dc26814
Put 'thisReceiver' declaration in class
...
Interfaces also have 'thisReceiver'
2017-05-04 09:33:03 +03:00
Dmitry Petrov
90ec53b3b0
Generate catch-block body within proper scope
2017-05-04 09:33:03 +03:00
Dmitry Petrov
acefd0d891
Minor refactor and fix in Scope constructors
2017-05-04 09:33:03 +03:00
Dmitry Petrov
54294eaaa7
Minor fix and deprecation in DeepCopyIrTree
2017-05-04 09:33:03 +03:00
Dmitry Petrov
4dd199fedf
OldDeepCopyIrTree --> DeepCopyIrTree (for migration)
2017-05-04 09:33:03 +03:00
Dmitry Petrov
d5fb0f3f32
Minor: simplify code in generateEnumConstructorCallOrSuperCall
2017-05-04 09:33:03 +03:00
Dmitry Petrov
aa515a9e5a
Add test for outer class instance reference from inner class
2017-05-04 09:33:03 +03:00
Dmitry Petrov
5ec9cb3171
OldDeepCopyIrTree: old DeepCopyIrTree working with new IrElement hierarchy
2017-05-04 09:33:03 +03:00
Dmitry Petrov
b53807ab83
Drop IrBuiltinsOperatorsBuilder
2017-05-04 09:33:03 +03:00
Dmitry Petrov
de7b7ce6d5
Generate anonymous initializer body in separate scope
2017-05-04 09:33:03 +03:00
Dmitry Petrov
9c3387e174
Deprecate IrMemberFunctionBuilder
2017-05-04 09:33:03 +03:00