Commit Graph

85561 Commits

Author SHA1 Message Date
pyos 5704dffdbe FIR: attach annotations to Java-converted cone types 2021-09-06 13:11:03 +03:00
pyos 5355d04553 FIR: enhance in/out-variant type arguments 2021-09-06 13:11:03 +03:00
pyos 8e122397b0 FIR: fix type index computation during enhancement
1. in/out type parameters count;
2. star projections take up 1 space in the tree.
2021-09-06 13:11:02 +03:00
pyos 5fec9f34b1 FIR: revert a hack that allows overriding T!! with T
1. this should've been only done if the language feature for validating
    that is disabled;

 2. that feature probably won't matter by the time FIR is stable;

 3. it only worked because type enhancement of type arguments is broken
    anyway - a more correct hack would be to provide a custom
    ConeTypePreparator.
2021-09-06 13:11:01 +03:00
pyos c85329905c FE: remove ? enhancement code that is never used
Using `starProjectionType` to enhance `?` is pointless because
 1. we explicitly ignore nullability annotations for `?` below;
 2. mutability is irrelevant;
 3. `starProjectionType` never returns references to other type
    parameters due to how the type substitutor works.
2021-09-06 13:11:01 +03:00
pyos a8b09a2016 FE: extract FIR-reusable code from SignatureParts 2021-09-06 13:11:00 +03:00
pyos b31925e6c9 FE: slowly refactor extractQualifiersFromAnnotations 3 2021-09-06 13:10:59 +03:00
pyos 5c8d3180f7 FE: slowly refactor extractQualifiersFromAnnotations 2 2021-09-06 13:10:59 +03:00
pyos 9af8abb8b9 FE: slowly refactor extractQualifiersFromAnnotations 1
That code is convoluted, better take it slow to avoid accidentally
breaking (or fixing) anything.
2021-09-06 13:10:58 +03:00
pyos 8d39d155bb FE/FIR: extract common code for mutability qualifiers 2021-09-06 13:10:57 +03:00
pyos c753e547c6 FE/FIR: extract common code for type qualifier inheritance 2021-09-06 13:10:56 +03:00
pyos 19a9de32f8 FE: move SignatureParts out of SignatureEnhancement 2021-09-06 13:10:55 +03:00
pyos 56d37c8e1c FE: separate type enhancement and FunctionN@Java warnings 2021-09-06 13:10:55 +03:00
pyos f4f9b1b27b FE: refactor propagation of type qualifier defaults though arguments 2021-09-06 13:10:54 +03:00
pyos e0d0bf9ede FIR/FE: extract common code for type qualifier defaults 2021-09-06 13:10:54 +03:00
pyos 8bf5e86788 FIR/FE: extract common code for handling known nullability annotations 2021-09-06 13:10:53 +03:00
pyos 9349d4b0d2 FIR/FE: extract common AnnotationTypeQualifierResolver code
TODO: extract the equivalent code that uses it...
2021-09-06 13:10:52 +03:00
pyos 29a240b261 FE: refactor AnnotationTypeQualifierResolver
Preparing for commonization with FIR
2021-09-06 13:10:51 +03:00
Sergey Bogolepov ae2c8a3540 [K/N] Fix KT-48613 2021-09-06 09:58:34 +00:00
Dmitry Savvinov d6cb96aa24 Wire proper KotlinTypeRefiner into ClassicTypeSystemCotextForCS
^KT-48589 Fixed
2021-09-06 12:06:26 +03:00
Svyatoslav Scherbina 9e50f40586 Use SYNTHETIC_OFFSET for constructors generated by noarg IR plugin
This should fix debug information on Native.
2021-09-06 07:32:01 +00:00
Abduqodiri Qurbonzoda 97eb28144f Introduce Common readln() and readlnOrNull() top-level functions #KT-48456 2021-09-05 15:31:11 +00:00
Tianyu Geng 14b66872b5 FIR IDE: hoist up API to get Java getter/setter name of a property...
and expose API to get the getter and setter symbols for synthetic Java
properties.
2021-09-05 11:18:58 +03:00
Roman Golyshev bb3f55dec2 [FIR IDE] Improve handling aliased types in KtFirImportOptimizer 2021-09-03 22:40:37 +03:00
Alexander Udalov a06fc20680 JVM IR: erase parameter default value when copying it to bridge
#KT-48391 Fixed
2021-09-03 15:00:44 +02:00
Dmitry Petrov bcafece28e Minor: update testData 2021-09-03 15:54:19 +03:00
pyos b1a8e8c7e6 JVM_IR: do not generate accessors for intrinsics 2021-09-03 15:54:19 +03:00
pyos 7ce5556de3 JVM_IR: try to fix SyntheticAccessorLowering.isAccessible again
The condition on the relationship between the current class and the type
of the receiver for protected members was the opposite of what the JVMS
says, and yet somehow mostly worked?

 #KT-48331 Fixed
 #KT-20542 Fixed
2021-09-03 15:54:16 +03:00
Alexander Udalov 9a472c418f JVM IR: generate private @JvmStatic functions as in old backend
#KT-46181 Fixed
2021-09-03 14:45:28 +02:00
Mikhail Glukhikh ed035d99ab Migrate -Xopt-in to -opt-in in Gradle Kotlin scripts 2021-09-03 15:40:47 +03:00
Mikhail Glukhikh b8c3b34886 FE 1.0: don't spread OptIn markers to children #KT-48570 Fixed 2021-09-03 15:40:45 +03:00
Mikhail Glukhikh 17590b7114 Disable OptInOnOverrideFordidden feature #KT-48535 Fixed 2021-09-03 15:40:44 +03:00
Dmitriy Dolovov df208dc060 [Native][tests] Fix failing 'interop_objc_smoke_noopgc' test 2021-09-03 14:53:10 +03:00
Ilya Goncharov ee1d2ecb4b [Gradle, JS] Delete recursively tmp directory in up-to-date case 2021-09-03 14:10:58 +03:00
Pavel Punegov 5bc6d937e8 [Native][Tests] Ignore test in Native backend
This test fail in the new MM
2021-09-03 10:52:10 +00:00
Pavel Punegov 7e4e0ffdaa [Native][Tests] Don't run tests that require diagnostic options 2021-09-03 10:52:10 +00:00
Pavel Punegov 50bd5da639 [Native][Tests] Add one more option to exclude 2021-09-03 10:52:10 +00:00
Pavel Punegov 6b49597bb7 [Native][Tests] Additional language directive 2021-09-03 10:52:09 +00:00
Pavel Punegov bc0d7efbbd [native][test] Fix main module select 2021-09-03 10:52:09 +00:00
Pavel Punegov b4dcf45ffa [Native][Tests] Improve reporting for external codegen tests
Add abort() method that adds tests that failed to compile
to statistics with Error status.
2021-09-03 10:52:09 +00:00
Svyatoslav Scherbina 3106ad9e30 kotlin-native/NEW_MM.md: use kotlin/temporary repo instead of kotlin/dev 2021-09-03 10:48:24 +00:00
Pavel Punegov 39b07d23f4 [Native][Tools] Add input directory in the bundles repack script 2021-09-03 10:25:36 +00:00
Dmitry Petrov b669de1663 JVM_IR generate range-based loop closer to Java counter loop
KT-48435 KT-48507
2021-09-03 10:38:20 +03:00
Elena Lepilkina 9ed08438d5 [K/N][perf] Windows bat script for getting parameter value 2021-09-03 07:35:16 +00:00
Elena Lepilkina a3158841fb [K/N][perf] Added script to get and redefine compiler args on TC 2021-09-03 07:35:15 +00:00
Ilya Matveev ce377e4a33 [K/N][tests] Enable dynamic tests for targets other than hosts 2021-09-03 06:11:10 +00:00
Ilya Matveev 5e08b18e4b [K/N][tests] Support dynamic lib tests for ssh executors 2021-09-03 06:11:10 +00:00
Sergey.Shanshin 36484abb50 Fix call of serializer for parametrized sealed and abstract classes
Fixes Kotlin/kotlinx.serialization#1646
2021-09-03 06:03:39 +00:00
Alexander Udalov 8cb9a5ff67 Slightly cleanup coroutine codegen and utilities
Reformat, fix inspections, remove some minor leftovers after dropping
experimentail coroutines.
2021-09-02 22:11:22 +02:00
Alexander Udalov 0a10cec579 Remove obsolete -X compiler arguments for JVM backend
-Xno-exception-on-explicit-equals-for-boxed-null
-Xstrict-java-nullability-assertions
-Xuse-old-spilled-var-type-analysis
-Xpolymorphic-signature
2021-09-02 22:11:22 +02:00