Mikhail Zarechenskiy
0ecb3afdf7
Refactoring: rename AsmTypeAndKotlinType -> JvmKotlinType
2018-02-09 05:06:34 +03:00
Mikhail Zarechenskiy
913e4b42bb
Support inline classes as last expression in lambda
2018-02-09 05:06:32 +03:00
Mikhail Zarechenskiy
396cc7d02b
Support unboxing of inline classes in elvis
2018-02-09 05:06:31 +03:00
Mikhail Zarechenskiy
fefcddc803
Support boxing/unboxing for captured vars of inline class types
2018-02-09 05:06:29 +03:00
Mikhail Zarechenskiy
9f24bbd980
Support unboxing of inline classes after assertion operator
2018-02-09 05:06:27 +03:00
Mikhail Zarechenskiy
30c79ffadc
Support generating computable properties inside inline classes
2018-02-09 04:57:20 +03:00
Mikhail Zarechenskiy
47aeeb36e4
Get accessors for companion object properties through wrapper class
2018-02-09 04:56:46 +03:00
Mikhail Zarechenskiy
70cd1cfcdf
Fix generation of companion object inside inline classes
2018-02-09 04:56:45 +03:00
Mikhail Zarechenskiy
e1d3b21201
Skip bridge methods generation for inline classes
2018-02-09 04:56:43 +03:00
Mikhail Zarechenskiy
4eb64fb4b9
Support mapping for inline classes based on type variables
2018-02-09 04:56:41 +03:00
Mikhail Zarechenskiy
0fd80ce980
Unbox inline classes after safe calls if needed
2018-02-09 04:56:40 +03:00
Mikhail Zarechenskiy
c5c8d84719
Support boxing/unboxing for method return types
2018-02-09 04:56:36 +03:00
Mikhail Zarechenskiy
390c214943
Support boxing for inline classes on function calls
2018-02-09 04:56:08 +03:00
Mikhail Zarechenskiy
0d682879f5
Initial boxing for inline classes: local variable assignments
2018-02-09 04:55:44 +03:00
Mikhail Zarechenskiy
b0ee61620c
Add KotlinType to methods coerceTo & coerceFrom
2018-02-09 02:08:11 +03:00
Mikhail Zarechenskiy
1ac4e9755a
Generate synthetic unbox method for each wrapper of inline class
2018-02-09 02:08:11 +03:00
Mikhail Zarechenskiy
a59917b6f8
Generate synthetic box method for each erased inline class
2018-02-09 02:08:10 +03:00
Mikhail Zarechenskiy
f856455841
Introduce stateless methods to map types without predefined mapping
2018-02-09 02:08:10 +03:00
Mikhail Zarechenskiy
1cdad65b9b
Refactoring: propagate KotlinType through hierarchy of StackValue
...
Mainly, this is needed to introduce boxing over inline classes
2018-02-09 02:08:10 +03:00
Mikhail Zarechenskiy
9d05fac771
Don't generate backing field for erased inline class
2018-02-09 02:08:09 +03:00
Mikhail Zarechenskiy
b08a32af2f
Fix local variables table for inline classes
2018-02-09 02:08:09 +03:00
Cuihtlauac ALVARADO
35c454f53f
Filter out "Picked Up" messages from stderr
...
KT-22340 Fixed
2018-02-08 18:48:25 +01:00
Yan Zhulanow
46c2adda4e
REPL: Fix crash on trying to :load with incorrect filename (KT-12037)
...
(cherry picked from commit 0238575a36beec36c412862ded8abcad02ab4c1f)
2018-02-08 20:44:15 +03:00
Yan Zhulanow
a25e93d82a
Debugger: (EA-112731) Do not crash miserably if we don't know the anonymous class name
...
Continue to log the exception, avoid breaking UX
2018-02-08 19:36:38 +03:00
Yan Zhulanow
2a3bab0a0f
Kapt: Register additional source directories without modifying the raw Gradle model
...
Unfortunately, this works only for the newer Android Studio versions, so we need to keep the old code until IDEA will migrate at least to AS 3.1.
2018-02-08 19:36:38 +03:00
Yan Zhulanow
6c4a2db34b
Kapt: Enums inside enum values should be forbidden (KT-22582)
2018-02-08 19:36:38 +03:00
Yan Zhulanow
510d5ece0f
Android Extensions: Support '.', '-' and ':' in View identifiers (KT-22700)
2018-02-08 19:36:37 +03:00
Yan Zhulanow
ba61a93dc7
Kapt: Forbid using the deprecated (original) kapt
2018-02-08 19:36:37 +03:00
Yan Zhulanow
bdd7ab3a09
Kapt: Mute Java 9 tests temporarily on Windows
2018-02-08 19:36:37 +03:00
Yan Zhulanow
03a20384ef
Uast: Fix an exception while converting type alias KotlinType to PsiType (KT-21874)
2018-02-08 19:36:37 +03:00
Yan Zhulanow
1cc4744345
Kapt: Map URLs to absolute file paths properly, also add some logging
2018-02-08 19:36:37 +03:00
Ilmir Usmanov
87bbac9d43
Take coroutineContext into account in RedundantSuspendModifierInspection
...
#KT-22651: Fixed
2018-02-08 19:34:20 +03:00
Alexander Udalov
e19ed1e001
Add test on experimental const val in annotation argument
...
This test checks that a usage inside an annotation argument is a
signature usage, which may be too restricting but easier to support at
the moment (and the restriction can be lifted in the future)
2018-02-08 17:08:34 +01:00
Alexander Udalov
a4af9dd5d1
Always consider container's experimentality in ExperimentalUsageChecker
...
This results in more diagnostics usually, but allows library authors to
avoid annotating everything in each experimental class with the marker
(only the class needs to be annotated now)
#KT-22759
2018-02-08 17:08:34 +01:00
Alexander Udalov
7123202670
Add getExtensionOrNull utility for protobuf messages
2018-02-08 17:08:33 +01:00
Alexander Udalov
65a6171782
Add test on Experimental in scripts
2018-02-08 17:08:33 +01:00
Alexander Udalov
21e2a3c0b4
Load module annotations in IDE
...
#KT-22759 Fixed
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
396a5ab352
JS: write/read module annotation FQ names to/from metadata
...
#KT-22759 In Progress
2018-02-08 17:07:23 +01:00
Alexander Udalov
ff33e0bad3
Write/read module annotation FQ names to/from metadata on JVM
...
#KT-22759 In Progress
2018-02-08 17:07:23 +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
Alexander Udalov
ec6b49b8b8
Check experimental API markers for deprecation
...
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
5e78adb501
Support -Xexperimental/-Xuse-experimental in ExperimentalUsageChecker
...
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
77625831f7
Support -Xexperimental and -Xuse-experimental, validate their values
...
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
153c86c069
Report diagnostic on overrides of experimental members
...
Unless they're experimental themselves
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
29c35e6686
Do not require experimental propagation for body usages in same module
...
Unless it's a usage inside the body of an effectively public inline
function
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
6d4e8f3781
Add some validation for Experimental/UseExperimental usages
...
#KT-22759 In Progress
2018-02-08 17:07:22 +01:00
Alexander Udalov
0bf0a315ed
Introduce Experimental and UseExperimental annotations
...
#KT-22759 In Progress
2018-02-08 17:07:21 +01:00
Simon Ogorodnik
366f630236
Fix J2K ObjectLiteral.testMyFrame by updating incorrect testData
2018-02-08 19:01:13 +03:00
Mikaël Peltier
126afbb8ac
Avoid to generate unecessary checkcast
...
StackValue already avoid to generate checkcast from a type or an
array to java.lang.Object. Add a new case to avoid to generate a
checkcast from an array to an array of java.lang.Object when arrays
have the same dimensions.
#KT-22714 Fixed
2018-02-08 16:38:46 +01:00