Ilmir Usmanov
0c0f035241
Set default value of releaseCoroutines in TypeSignatureMapping to true
2019-03-14 15:06:07 +03:00
Georgy Bronnikov
d7ce24410d
Remove descriptors from SharedVariablesManager
2019-03-13 23:13:41 +03:00
Mads Ager
8b566fda76
JVM_IR: Perform asm type conversion for string concat arguments.
...
This ensures that the Unit instance is loaded when string
concatenation contains a sub part that is a call of a Unit
return-type method.
2019-03-13 10:01:21 +01:00
Ting-Yuan Huang
013ad4b8e4
JVM_IR: defer some branch optimizations to codegen.
...
Specifically, defer the removal of hand-written "if (true|false)" from
JvmBuiltinOptimizationLowering into codegen so that appropriate debug
info (and a NOP) can be inserted.
Change-Id: Ia11af05ad8b4251946bd3e685fb7c3319f0f433f
2019-03-13 08:48:20 +01:00
Ting-Yuan Huang
6bbb0269b1
IR: Set when.origin for IrIfElseImpl
...
Change-Id: I38510b59e3dc936baadbfe3ef2702990493815e5
2019-03-13 08:48:20 +01:00
Mikhael Bogdanov
1e3277d0e6
Set proper origin for cascaded if expression
2019-03-13 08:27:07 +01:00
Alexander Udalov
584137121b
Do not write version requirements in metadata for lambdas
...
#KT-29790 Fixed
2019-03-12 18:53:08 +01:00
Alexander Udalov
e942bff4a2
Reformat module 'serialization', fix inspections
2019-03-12 18:53:08 +01:00
Alexander Udalov
a269e9bc00
JVM IR: fix typo in condition in KCallableNamePropertyLowering
...
This however makes testLocalFunctionName fail because currently
isSubclassOf (incorrectly) returns false and therefore an anonymous
class is generated and the name is taken from there. The name there is
"box$OK" which is incorrect. The isSubclassOf issue is KT-28198 and will
be fixed separately; the incorrect name issue will be investigated later
2019-03-12 18:49:41 +01:00
Mikhael Bogdanov
dd59deb977
Mute failed test
2019-03-12 13:33:35 +01:00
Mikhail Zarechenskiy
f95fdb3cf1
Advance bootstrap to include fix in NI about Nothing-expressions
...
See 1594c1fc for details. Also, remove fix from f07fed9a .
2019-03-12 15:27:12 +03:00
Steven Schäfer
9ea39d2b7c
Fix return types for while loops.
2019-03-12 09:33:00 +01:00
Steven Schäfer
4c8425caeb
Run ExpectDeclarationsRemoving in the JVM_IR backend.
2019-03-12 09:29:00 +01:00
Alexander Udalov
d12e5ddafc
Generate bytecode for array intrinsics manually
...
#KT-28285 Fixed
2019-03-11 18:36:10 +01:00
Alexander Udalov
dd0b087b92
Add StackValue.put(InstructionAdapter) for convenience
2019-03-11 18:36:09 +01:00
Alexander Udalov
f9be21c935
Report warning on @Synchronized on inline methods
...
Until KT-27310 is supported, we warn users that this has no effect.
#KT-29884 Fixed
2019-03-11 18:32:44 +01:00
Alexander Udalov
76aff56b04
Remove unneded parameter of ResolverForProjectImpl
2019-03-11 18:31:59 +01:00
Alexander Udalov
0ccf7345e3
Move JsAnalyzerFacade from ide-common to js.frontend
...
To be used in diagnostic tests now, and as a replacement for
TopDownAnalyzerFacadeForJS in the future
2019-03-11 18:31:59 +01:00
Mikhail Zarechenskiy
1594c1fc6b
[NI] Don't consider Nothing-constraint as proper to complete call
...
Follow-up of 9b3e17f0 . There we decided to complete call if a type
variable from a return type has proper lower constraints, now we refine
this rule wrt `Nothing`-like constraints to avoid inferring type variables
to Nothing, which is quite useless
#KT-30370 Fixed
2019-03-11 19:14:29 +03:00
Ilya Gorbunov
f07fed9afa
Temporary fix to avoid runtime exception due to incorrect inferred type
...
Caused by: java.lang.ClassCastException:
kotlin.collections.EmptySet cannot be cast to java.lang.Void
at org.jetbrains.kotlin.codegen.coroutines.CoroutineTransformerMethodVisitorKt.findSafelyReachableReturns(CoroutineTransformerMethodVisitor.kt:984)
Co-authored-by: Alexander Udalov <alexander.udalov@jetbrains.com >
2019-03-08 23:35:32 +03:00
Nikolay Krasko
8977d0e26d
Setup Missing API inspection
2019-03-08 19:13:07 +03:00
Alexander Udalov
d8b364ea40
Mark KAnnotatedElement.hasAnnotation as experimental
...
#KT-29041 Fixed
2019-03-08 14:57:01 +01:00
Kerooker
a342f844b8
Implements KAnnotatedElement.hasAnnotation()
...
This commit fixes KT-29041, by adding a convenience method to verify if a certain `KAnnotatedElement` has an annotation or not
2019-03-08 14:53:51 +01:00
Dmitriy Novozhilov
b681e4bda3
NI. Fix call commonSuperType for 0 types (bug introduced in cbf1d773)
2019-03-07 17:50:30 +03:00
Dmitriy Novozhilov
9b50d31169
NI. Fix StackOverFlow in type approximation. #KT-30021 Fixed
2019-03-07 16:24:53 +03:00
Dmitriy Novozhilov
cbf1d773f7
NI. Coerce return type of lambda function descriptor to Unit. #KT-30242 Fixed
2019-03-07 14:36:09 +03:00
Dmitriy Novozhilov
77c98bef4d
Fix recursion in contract declaration analysis. KT-26386 Fixed
...
Issue fixed only in old inference
2019-03-07 14:35:18 +03:00
Dmitriy Novozhilov
d0462859bf
Minor. Fix reporting diagnostic in contract with callable reference
2019-03-07 14:35:13 +03:00
Alexander Udalov
518b03125c
Support JVM target versions up to 12
...
#KT-26240 Fixed
2019-03-07 11:42:31 +01:00
Alexander Udalov
9f75fd0d62
Minor, remove confusing logic from GenericReplChecker
2019-03-07 11:42:31 +01:00
Alexander Udalov
c7c377e1b1
Use JvmTarget.DEFAULT instead of JVM_1_6 where applicable
2019-03-07 11:42:31 +01:00
Nikolay Krasko
ec0084ef61
Minor: remove outdated ant mentioning
2019-03-06 18:16:30 +03:00
Nikolay Krasko
0e990ae01b
Update inserting algorithm to preserve order for tags with the same offset
2019-03-06 18:16:29 +03:00
Mikhael Bogdanov
6a893ba196
Regenerate test data
2019-03-06 16:12:43 +01:00
Steven Schäfer
eec25dbea2
Avoid true condition generation for do while loop, since it confuses the Java verifier.
...
Change-Id: I96eca6623a91a8365090768f42c6e865b612e1cc
2019-03-06 16:04:23 +01:00
Alexander Udalov
59fda8d7ce
Support JvmPackageName with JvmMultifileClass
...
This is an internal feature of our standard library needed to compile
new API for unsigned types
2019-03-06 15:34:23 +01:00
Alexander Udalov
ea21cda4df
Reformat MultifileClassCodegen, fix inspections
2019-03-06 15:33:45 +01:00
Alexander Udalov
670b06ae97
Minor, ignore tests on typeOf without reflection on Android
...
Currently all Android tests are run with kotlin-reflect in the
classpath, so these tests can't succeed
2019-03-06 15:25:21 +01:00
Ting-Yuan Huang
c1d721a15f
when: emit lookupswitch/tableswitch if possible
...
A lookupswitch or tableswitch can be used if all conditions are equality
checks to constants. To be more specific, it can be done if:
1. All conditions are CALL 'EQEQ(Any?, Any?)': Boolean
2. All types of variables involved in comparison are in the same group
of Char/Byte/Short/Int, String or enum.
3. All arg0 refer to the same value.
4. All arg1 are IrConst<*>.
Change-Id: Ifd7cb618395f6c5cc64601018b446f0bb7f5891c
2019-03-06 13:33:55 +01:00
Simon Ogorodnik
3950dec4db
Implement TypeSystemContext for FIR #KT-29968 Fixed
...
Use this context in FirClassUseSiteScope for type comparison
2019-03-06 13:36:00 +03:00
Igor Chevdar
2c7b05a67b
Wrapped descriptors: supported complex annotations
2019-03-06 13:25:06 +03:00
Mikhail Zarechenskiy
88ee0bf6af
Swap arguments for diagnostic message about incompatible enums
...
This commit is restoring previous behavior changed in c4b69b65 and
fixing `DiagnosticMessageTestGenerated.testIncompatibleEnums` test
2019-03-06 10:44:45 +03:00
Yan Zhulanow
eb1543c71a
Minor: Fix a few compilation warnings in compiler and compiler tests, fix formatting
2019-03-06 03:30:55 +03:00
Alexander Udalov
2bec72d46a
Additional cleanup of KotlinTypeMapper after J2K
2019-03-05 20:34:32 +01:00
Mikhael Bogdanov
20da778046
Add default values to KotlinTypeMapper constructor, remove them from call sites
...
~
2019-03-05 20:34:25 +01:00
Mikhael Bogdanov
cc0c3b1592
Specify default value for irBackend
2019-03-05 20:33:35 +01:00
Mikhael Bogdanov
a3c3282362
Minor. Clean up code after convertion
2019-03-05 20:33:34 +01:00
Mikhael Bogdanov
315df81397
Convert KotlinTypeMapper to Kotlin
2019-03-05 20:33:33 +01:00
Mikhael Bogdanov
61a95b440f
Rename .java to .kt
2019-03-05 20:33:32 +01:00
Mikhael Bogdanov
b43622b87f
Minor. Code clean
2019-03-05 20:33:31 +01:00