Commit Graph

40131 Commits

Author SHA1 Message Date
Artem Kobzar ba738cbbff feat: add ability to create nested entities inside object. 2022-06-22 11:59:13 +00:00
Pavel Mikhailovskii 3766698081 KT-52743 IR: Fix null checks in Elvis operators 2022-06-22 09:11:24 +00:00
Mikhail Zarechenskiy f4944d80b9 [DI] Do not recreate collections in case of empty results
^KT-52756
2022-06-21 17:07:28 +00:00
Dmitriy Novozhilov eb453dc96b [FIR] Expand typealiases in OverloadConflictResolver
^KT-52825 Fixed
2022-06-21 14:10:38 +00:00
Dmitriy Novozhilov b73783b693 Add test for KT-52580 2022-06-21 14:10:37 +00:00
Dmitriy Novozhilov ed8187109a [FIR] Fix forgotten level changes during building CFG for !! 2022-06-21 14:10:37 +00:00
Dmitriy Novozhilov 80223bd555 [FIR] Fix determination of which type is FIR type in tree generator
^KT-52832 Fixed
2022-06-21 14:10:36 +00:00
Dmitriy Novozhilov a7bae6f4c4 [FE] Generate default method for ComponentRegistrar.supportsK2
This is needed to keep binary compatibility for existing compilers plugins
^KT-52872 Fixed
2022-06-21 14:10:35 +00:00
Victor Petukhov 9e8ef56cca [FE 1.0] Imitate having builder inference annotation while trying resolve with a builder inference
^KT-52892 Fixed
2022-06-21 15:02:31 +02:00
Victor Petukhov fa7809cd80 [FE] Remove BuilderInference annotation from tests 2022-06-21 15:01:56 +02:00
Jinseong Jeon 911963bafd CLI: utilize JRT path split (w/o magic number) 2022-06-21 11:34:09 +02:00
Ivan Kochurkin b67eab1eee [FIR] Use coneTypeSafe instead of coneType in loadExperimentalities to fix YouTrack building 2022-06-21 12:30:58 +03:00
Mikhail Glukhikh 8b4ae3bd70 IR interpreter: fix f/o delegation from primitive classes 2022-06-21 07:39:04 +00:00
Mikhail Glukhikh a8ce4e827c FIR2IR: fix f/o & delegate overridden symbol generation #KT-52745 Fixed 2022-06-21 07:39:03 +00:00
Mikhail Glukhikh 966e2442c6 Add tests for KT-52745 2022-06-21 07:39:03 +00:00
Ilya Kirillov ba797fa1b4 [stubs] fix cls stubs for declarations with context receivers
^KTIJ-21243 fixed
2022-06-20 19:10:36 +02:00
Jinseong Jeon b18999be82 FIR/LC: filter out scripts for facade creation
^KTIJ-22016 Fixed
2022-06-20 17:38:50 +02:00
Jinseong Jeon cd80bddfcd U/LC: use error(...), not error { }
Otherwise, the message would be: () -> String

Also, add more information to the error message

^KT-47777 Fixed
2022-06-20 17:38:50 +02:00
Mikhael Bogdanov 8dd141869a KAPT+IR: Skip assertion in BodyGenerator
#KT-49682
2022-06-20 11:42:54 +00:00
Mikhael Bogdanov e1d00c3d6e KAPT+IR: support nullability for error types
#KT-49682
2022-06-20 11:42:54 +00:00
Mikhael Bogdanov 162ca4ac2b KAPT+IR: support IR error types
#KT-49682
2022-06-20 11:42:53 +00:00
Mikhael Bogdanov 41d6f0dca4 Remove ir.tree.impl from build 2022-06-20 11:42:52 +00:00
Mikhael Bogdanov 328160894b Move ir.tree.impl into ir.tree 2022-06-20 11:42:51 +00:00
Mikhail Glukhikh 065e852199 FIR: support more precise diagnostics about parameter names
#KT-52762 Fixed
2022-06-20 11:28:55 +00:00
Mikhail Glukhikh 9fbafc3eb9 Add test for KT-52762 2022-06-20 11:28:55 +00:00
Simon Ogorodnik b7a215334e KT-52409 Report error when using K2 with multi-platform 2022-06-20 10:39:25 +00:00
Igor Yakovlev 270a41a2db [WASM] Remove deprecated usage of externref 2022-06-18 19:12:21 +02:00
Victor Petukhov eb19d39cbf [FE 1.0] Build captured type's supertypes in an alternative way: use own projection type as a first supertype, then supertypes from the corresponding type parameter's upper bounds
The original case provoked forking a constraint system which isn't supported in K1 (K2 only). If the captured type is recursive, then type parameter's upper bounds may break subtyping due to substitution the current captured type again, into a recursive type parameter.

Note that we already have special logic for recursive captured types. See `isTypeVariableAgainstStarProjectionForSelfType`.

^KT-52782 Fixed
2022-06-18 14:04:40 +02:00
Ivan Kochurkin 37ccd85e59 [FIR] Use coneType instead of coneTypeSafe<ConeKotlinType> in checkers and fir2ir 2022-06-17 23:26:21 +00:00
Ivan Kochurkin 02ac6110bd [FIR] Handle more cases of implicit types in FirNoImplicitTypesHandler 2022-06-17 23:26:21 +00:00
Ivan Kochurkin 157eedca43 [FIR2IR] Create IrConst instead of IrGetField for default value param in annotation class, ^KT-52676 Fixed 2022-06-17 23:26:20 +00:00
Ivan Kochurkin ca222b9c31 [FIR] Create error type for FirErrorLoop during initialization 2022-06-17 23:26:20 +00:00
Ivan Kochurkin 1a398e89ec [FIR] Add attributes to ConeErrorType for correct annotations resolving 2022-06-17 23:26:19 +00:00
Ivan Kochurkin 9c67a4bc27 [FIR] Remove not used ConeArgumentTypeMismatchCandidateError 2022-06-17 23:26:19 +00:00
Ivan Kochurkin c3638d2219 [FIR] Remove not used ConeUnsupportedDynamicType 2022-06-17 23:26:19 +00:00
Ivan Kochurkin ffbb23661d [FIR] Report UNSUPPORTED for default value in function type 2022-06-17 23:26:18 +00:00
Ivan Kochurkin a3647bb4ff [FIR] FirRenderer: render annotations for block and resolvedQualifier 2022-06-17 23:26:18 +00:00
Ivan Kochurkin fd2b4fd497 [FIR] Fix false positive USELESS_CAST on stub types, ^KT-50293 Fixed 2022-06-17 23:26:18 +00:00
Ivan Kochurkin 856d14e5f7 [FIR] Don't create unwanted "Should have initializer" elements 2022-06-17 23:26:17 +00:00
Ivan Kochurkin 9d6f88469a [FIR] Use @file:Suppress("DuplicatedCode") for generated fir impl nodes
Get rid of unwanted warnings in IntelliJ
2022-06-17 23:26:17 +00:00
Ivan Kochurkin 0c543d65f3 [FIR] Remove not used FirRedundantLabelChecker 2022-06-17 23:26:17 +00:00
Ivan Kochurkin 9f69ea1786 [FIR] Add TYPECHECKER_HAS_RUN_INTO_RECURSIVE_PROBLEM diagnostics, ^KT-52327 Fixed 2022-06-17 23:26:16 +00:00
Ivan Kochurkin c5648fd449 [FIR] Pass annotations to buildResolvedQualifierForClass 2022-06-17 23:26:16 +00:00
Ivan Kochurkin 1ac4d68433 [FIR] Initialize annotations for block for LightTree 2022-06-17 23:26:16 +00:00
Ivan Kochurkin 34b5ce21a1 [FIR] Fix WRONG_ANNOTATION_TARGET for annotation for block, ^KT-52175 Fixed 2022-06-17 23:26:15 +00:00
Ivan Kochurkin b573532d8c Introduce COMPONENT_FUNCTION_NAME_PREFIX constant 2022-06-17 23:26:15 +00:00
Alexander Udalov a52017a130 Rewrite light analysis mode test class filter
Instead of filtering local/synthetic classes based on ClassDescriptor
instances, do it by interpreting kotlin.Metadata. This is needed to
enable these tests for JVM IR, where descriptors are not available in
this way.
2022-06-17 16:51:06 +02:00
Alexander Udalov 448cba07bb Psi2ir: do not generate init block body in kapt mode 2022-06-17 16:51:06 +02:00
Alexander Udalov 7e9d7c895a Kapt: add flag kapt.use.jvm.ir for enabling JVM IR support
#KT-49682
2022-06-17 16:51:06 +02:00
Alexander Udalov 65c7a7f939 Minor, remove obsolete abstract test classes 2022-06-17 16:51:05 +02:00