Commit Graph

38655 Commits

Author SHA1 Message Date
Mikhail Glukhikh a4df0aaa7d FIR: Add test 2021-12-15 22:23:08 +03:00
Mikhail Glukhikh 2338281889 FIR: Add test for get class + let in delegation 2021-12-15 22:23:07 +03:00
Simon Ogorodnik 1c8b6dccff FIR Tests: Fix modularized tests dependencies for html dump 2021-12-15 22:23:06 +03:00
Simon Ogorodnik 8f9fd76254 FIR: Remove unused FirInferenceSession.addErrorCall 2021-12-15 22:23:06 +03:00
Simon Ogorodnik 11ec23e5dc FIR: Make synthetic type variables fix to self-stub type if no info 2021-12-15 22:23:05 +03:00
Mikhail Glukhikh 8ae37a3dd2 FIR: Attempt to cache constraint storage in delegate inference 2021-12-15 22:23:04 +03:00
Mikhail Glukhikh 9aced1c33d FIR: Update test-data (Delegate inference) 2021-12-15 22:23:04 +03:00
Mikhail Glukhikh 1e41ec7d22 FIR: replace ConeComposedSubstitutor with ChainedSubstitutor 2021-12-15 22:23:03 +03:00
Simon Ogorodnik 52145e0623 FIR: Respect nullability when substituting stub types 2021-12-15 22:23:02 +03:00
Mikhail Glukhikh 40a2837b4c FIR: Update test-data (Delegate inference) 2021-12-15 22:23:02 +03:00
Simon Ogorodnik b45b624945 FIR: Fix integrating DeclaredUpperBound positions in builder inference 2021-12-15 22:23:01 +03:00
Simon Ogorodnik 5efbd016bd Inference: Respect stub-type nullability in common super-type 2021-12-15 22:23:00 +03:00
Simon Ogorodnik 19a9091966 FIR: Add correct Any? supertype for stub types 2021-12-15 22:23:00 +03:00
Simon Ogorodnik 0d81e14904 FIR: Remove default constraint stub type == synthetic variable 2021-12-15 22:22:59 +03:00
Simon Ogorodnik 3fadf1cb46 FIR: Avoid creating new stub type constructors on nullability replacing 2021-12-15 22:22:59 +03:00
Simon Ogorodnik 61ea65906c FIR: Implement captured type substitution 2021-12-15 22:22:58 +03:00
Simon Ogorodnik 476a7727da FIR: Unmute passing black-box tests 2021-12-15 22:22:57 +03:00
Simon Ogorodnik 2e69f7732c FIR: Add more tests for delegate inference 2021-12-15 22:22:57 +03:00
Simon Ogorodnik bb411cbba7 FIR: Try to implement delegate inference by using stub types chain 2021-12-15 22:22:56 +03:00
Simon Ogorodnik 7b8ece8758 FIR: Make constraint injector treat stub types as type variables 2021-12-15 22:22:55 +03:00
Simon Ogorodnik 19e2409284 FIR: Remove duplication of delegateExpression in property delegates 2021-12-15 22:22:55 +03:00
Simon Ogorodnik 196be93d42 FIR: Add separate type constructor to stub types 2021-12-15 22:22:54 +03:00
Simon Ogorodnik 2e01377ce0 FIR: Substitute dispatch receiver in substitution overrides 2021-12-15 22:22:53 +03:00
Simon Ogorodnik 6cf2c6f93a Select non-DeclaredUpperBound for initial when simplifying constraint 2021-12-15 22:22:52 +03:00
Simon Ogorodnik 91b629d16a Refactor. Remove ConstraintPosition data duplication 2021-12-15 22:22:52 +03:00
Mikhail Glukhikh 4d9e919f7e FIR: preliminary refactoring of delegate resolve 2021-12-15 22:22:51 +03:00
Mikhail Glukhikh a19495cb26 FIR: add test with resolve problem in delegate 2021-12-15 22:22:50 +03:00
Roman Artemev 1a64e2da91 [KLIB] Add klib layout tests
- currently only file paths are checked
2021-12-15 21:13:53 +03:00
Roman Artemev fb84287ae0 [KLIB] Compute relative path instead of absolute if relative base is provided
- normalize  path if required
 - path it in JS/Native
 - path null for JVM (temporary)
 - fix build
2021-12-15 21:13:52 +03:00
Roman Artemev 893582fa65 [JS IR] Setup config about path relativeness and normalization in config 2021-12-15 21:13:51 +03:00
Roman Artemev bc5dea860e [KLIB] Add relative path base configuration key 2021-12-15 21:13:50 +03:00
Roman Artemev 526c85f820 [KLIB] Add CLI key to provide relative path base 2021-12-15 21:13:50 +03:00
Evgeniy.Zhelenskiy ec2e96f3e4 Regenerate inline class tests as 1 arg value classes 2021-12-15 17:14:22 +00:00
Leonid Startsev 2eac2ff3a2 Support Array<KClass> in instantiated annotations
#KT-47703 Fixed
2021-12-15 16:05:29 +00:00
Tianyu Geng a5844b754e Type Approximation: add separate flag to control approx. anonymous type
This extra flexibility is useful for IDE where we always want to
approximate anonymous types but may not want to approximate other local
 types
2021-12-15 16:09:27 +03:00
Ilya Goncharov db9640c3b3 [Gradle, JS] Add gradle property for per-module/whole-program
Merge-request: KT-MR-5200
2021-12-15 09:08:45 +00:00
Jinseong Jeon e36cc87b19 LC: introduce KotlinLightTypeParameterBuilder (w/ origin) 2021-12-15 10:41:50 +03:00
Jinseong Jeon 20408dc176 LC: use callable name as suffix of receiver parameter name 2021-12-14 21:01:50 +03:00
Dmitry Petrov 9375f41936 JVM_IR KT-50073 inline callable reference adapter into 'invoke' 2021-12-14 14:35:12 +00:00
Dmitry Petrov 42dd8aa12d JVM_IR KT-50193 remove temporary variable in argument null check 2021-12-14 17:10:23 +03:00
Dmitry Petrov 34c70ea04e JVM_IR KT-50193 result of !! is non-null 2021-12-14 17:10:20 +03:00
Anastasia.Shadrina 343a860553 [FE] Make OverloadChecker take CR into account 2021-12-14 15:19:42 +03:00
Victor Petukhov 24900630cb Revert "Revert "[FE 1.0] Provide an API to clean compile time initializer cache for variable descriptor""
This reverts commit faeb5d21ab.
2021-12-14 14:21:46 +03:00
Dmitriy Dolovov 60dcafcf43 [Test] TestGen: Use canonical class names for generated imports
This is needed to have correct class names for inner/nested classes. For example, to have `import java.util.AbstractMap.SimpleEntry` instead of `import java.util.AbstractMap$SimpleEntry`.
2021-12-14 13:48:23 +03:00
Ilya Chernikov c1c94778ce Detect and report inner classes capturing script instance 2021-12-14 13:39:22 +03:00
Ilya Chernikov e865652602 [minor] ScriptLowering cleanup 2021-12-14 13:39:22 +03:00
Ilya Chernikov 10c5071eda Implement backend error reporting on unsupported script capturing
#KT-30616 fixed
#KT-43995 fixed
#KT-19424 fixed
#KT-49443 fixed
2021-12-14 13:39:17 +03:00
Ilya Chernikov cb5e451e05 Implement script instance capturing in script lowering
for regular classes only. Reimplementing the main behavior of the
old BE and implementing few cases on top of it.
#KT-19423 fixed
2021-12-14 13:39:17 +03:00
Ilya Chernikov 87952d63a3 Rollback script related LDL changes...
to reimplement them properly in the script lowering
2021-12-14 13:39:16 +03:00
Hung Nguyen 586fa8af64 KT-45777: Shrink classpath snapshot incrementally
Currently, we shrink classpath snapshots at 2 steps:
  - Classpath diffing: Shrink the current classpath snapshot against
    the previous lookup symbols
  - Classpath snapshot saving: Shrink the current classpath snapshot
    against the current lookup symbols

With this commit, the shrinking at the second step is now incremental.
The shrinking at the first step is still non-incremental.
2021-12-14 13:10:08 +03:00