Commit Graph

14809 Commits

Author SHA1 Message Date
Victor Petukhov 37b5f01a5a Fix test after abe607f4ea 2021-10-27 10:57:55 +03:00
Dmitry Petrov e76cf8550e JVM_IR add test for KT-49411 2021-10-27 09:47:56 +03:00
Victor Petukhov 34fb61fb3e Postpone promoting warnings to errors for ProperTypeInferenceConstraintsProcessing
^KT-49322 Fixed
2021-10-26 19:38:00 +03:00
Victor Petukhov 64c682f465 Remove constraints containing stub types after completion of the common system of a builder inference call
^KT-49285 Fixed
2021-10-26 19:37:59 +03:00
Victor Petukhov 012f1f6013 Introduce a compiler X flag to enable enhancing not null annotated type parameter's types to definitely not null types 2021-10-26 19:37:59 +03:00
Victor Petukhov abe607f4ea Add test for KT-49209 2021-10-26 19:37:58 +03:00
Victor Petukhov e0a4704c21 Revert "Make freshly substituted type variables def not nullable if they come from not null type parameter"
This reverts commit 41936a790b37bef45d7e7dad851856ea1750ef01.
2021-10-26 19:37:58 +03:00
Victor Petukhov 2261928f4f Process simple CapturedType in ClassicTypeSystemContext.typeConstructorProjection as well
^KT-49101 Fixed
2021-10-26 19:37:58 +03:00
Victor Petukhov 836c6b280d Make freshly substituted type variables def not nullable if they come from not null type parameter
^KT-48778 Fixed
2021-10-26 19:37:57 +03:00
Victor Petukhov 02d06b6390 Transform VisibilityError diagnostic for callable references to further report it on the corresponding argument of a base call
^KT-46437 Fixed
2021-10-26 19:37:57 +03:00
Victor Petukhov d50eba62bd Propagate inference session from local context into property resolvers
^KT-48633 Fixed
2021-10-26 19:37:56 +03:00
Victor Petukhov 43e9c1223a Take into account possible passed old captured type in isCapturedTypeFromSubtyping check
^KT-48590 Fixed
2021-10-26 19:37:55 +03:00
Victor Petukhov d015d3bc0e Don't enhance previously erased value parameters for jspecify strict mode
^KT-48261 Fixed
2021-10-26 19:37:55 +03:00
Denis.Zharkov 5690a9f21b FIR: Fix overridability of Kotlin vararg from Java 2021-10-26 18:45:59 +03:00
Denis.Zharkov 4b1ce6c1a7 FIR: Fix safe call receiver nullability after null check 2021-10-26 18:45:59 +03:00
Denis.Zharkov 2a8eacd4ba FIR2IR: Fix exception when local class used before declaration 2021-10-26 18:45:59 +03:00
Denis.Zharkov 0bdea4f20a FIR: Do not create incorrect synthetic property 2021-10-26 18:45:59 +03:00
Denis.Zharkov 52c2908bb7 FIR: Fix another inconsistency with FE1.0 in synthetic properties resolution 2021-10-26 18:45:59 +03:00
Denis.Zharkov 16e8e0e58b FIR: Add test on raw type scope
^KT-49351 Related
2021-10-26 18:45:58 +03:00
Denis.Zharkov 94129dce2e FIR: Add a test with current behavior on upper bounds with raw types
^KT-49345 Related
2021-10-26 18:45:58 +03:00
Mikhail Glukhikh 37b95972db Uncomment warning about -Xopt-in deprecation 2021-10-26 13:38:40 +03:00
Ivan Kochurkin 489c9ae11f [FIR2IR] Recognize postfix inc/dec blocks in sequence of statements 2021-10-25 21:21:45 +03:00
Ivan Kochurkin 82591bb107 [FIR2IR] More accurate equals intrinsic for double/float types 2021-10-25 21:21:43 +03:00
Ivan Kochurkin b4fada82ae [FIR2IR] Fix conversion of loops with withIndex 2021-10-25 21:21:42 +03:00
Ivan Kochurkin 3210a2a950 [FIR2IR] Recognize postfix inc/dec pattern from block statements 2021-10-25 21:21:40 +03:00
Ivan Kochurkin 0d91e16a15 [FIR2IR] Fix considering of Contains intrinsic 2021-10-25 21:21:40 +03:00
Ivan Kochurkin 15d23f2a72 [FIR2IR] Fix applying of equals intrinsics 2021-10-25 21:21:39 +03:00
Ivan Kochurkin 31507e7e7e [FIR2IR] Fix origin for desugared blocks (to enable jvm optimization lowering)
Move getIrAssignmentOrigin to ConversionUtils
2021-10-25 21:21:37 +03:00
Ivan Kochurkin 4bafa8628e [FIR2IR] Fix generating of IINC instruction with FIR for inc/dec with constants 2021-10-25 21:21:35 +03:00
Ivan Kochurkin 98596eaa08 [FIR2IR] Fix generating of IINC instruction with FIR for inc/dec operations 2021-10-25 21:21:33 +03:00
Dmitry Petrov c441980c74 JVM_IR don't move inplace arguments with variable stores
KT-49370
KT-49407
2021-10-25 20:11:42 +03:00
Dmitry Petrov 45a4cea655 IR KT-49372 cache progression loop parameters if their values can change 2021-10-25 19:03:13 +03:00
Roman Artemev 9f52326d14 [JS IR] Fix default arguments in suspend functions
Don't forget to remap parameter references in default arg expressions

The issue originally discovered in kotlinx.coroutines tests.

 - add test
2021-10-25 12:56:16 +00:00
Tianyu Geng 363b25504d FIR checker: report REDUNDANT_LABEL_WARNING
Since many labels are not present in the FIR tree, this checker is
implemented as a syntax checker. Comparing with FE1.0, this change
reports some REDUNDANT_LABEL_WARNING that FE1.0 has missed, especially
LHS of assignments.
2021-10-25 13:51:01 +03:00
Dmitriy Novozhilov f7bb55433d Add LanguageVersion and ApiVersion for 1.8 2021-10-25 12:54:10 +03:00
Ivan Kylchik 0d02b1d51c [TESTS] Remove ignore js backend directive from some tailRecursion tests
These tests were falling due to inserted diagnostics. New test
infrastructure can remove them before running test.
2021-10-25 00:14:19 +03:00
Ivan Kylchik f4bbcdc013 [TESTS] Move global directives outside file scope 2021-10-25 00:14:19 +03:00
Ivan Kylchik 596cbdfb71 [TESTS] Remove jvm specific annotations from coroutine helpers 2021-10-25 00:14:18 +03:00
Dmitry Petrov b03c9b6fc6 JVM_IR additional tests for indy lambda serialization 2021-10-23 11:21:27 +03:00
Dmitry Petrov 6e9cbf52b1 JVM_IR make $deserializeLambda$ method synthetic 2021-10-23 11:21:26 +03:00
Dmitry Petrov 1dbbe22c8c JVM_IR serializable indy method references 2021-10-23 11:21:25 +03:00
Svyatoslav Kuzmich 4fc461a2ff [Wasm] Imporove external interface support
* Support boxing/unboxing when casting to Any
* Support ===, equals, hashCode, toString

* Support adapting String in interop boundary
2021-10-23 01:26:12 +03:00
Mikhail Glukhikh 7b9ac4c5f7 FIR: create constructors copies with correct containers in JvmMappedScope
#KT-49133 Fixed
2021-10-23 01:17:10 +03:00
Dmitry Petrov d5f6674d2d JVM_IR KT-49335 run RepeatedAnnotationLowering per module
Otherwise, we drop annotation constructors in AnnotationLowering,
which breaks RAL in case of annotation container declared in different
file.
2021-10-21 21:22:36 +03:00
Dmitriy Novozhilov a2b8493f47 [FE 1.0] Prohibit using non exhaustive if and when in rhs of elvis expression
^KT-44705
^KT-49349 Fixed
2021-10-21 19:39:51 +03:00
Dmitriy Novozhilov 06a26a5a74 [FE 1.0/FIR] Fix message of SEALED_SUPERTYPE_IN_LOCAL_CLASS diagnostic
^KT-46285 Fixed
2021-10-21 19:39:49 +03:00
Dmitriy Novozhilov 94664694df [FIR] Prohibit confusing syntax inside when branches
^KT-48385
2021-10-21 19:39:46 +03:00
Dmitriy Novozhilov f52361ac2b [FE 1.0] Properly report NON_TRIVIAL_BOOLEAN_CONSTANT on parenthesized expressions
^KT-39883
2021-10-21 19:39:39 +03:00
Dmitriy Novozhilov 1513e739c6 [FE 1.0] Prohibit confusing syntax inside when branches
^KT-48385 Fixed
2021-10-21 19:39:36 +03:00
Tianyu Geng c262f17d75 FIR checker: report violations related to API mode 2021-10-21 00:01:14 +03:00