Dmitry Petrov
4e92c79bc4
JVM_IR: don't generate nullability annotations on synthetic declarations
...
Fixes KT-36993 and some other related issues.
2020-06-23 20:51:48 +03:00
Dmitry Petrov
5bfec7f6bc
JVM: don't generate nullability annotations on property delegate fields
...
Such fields are private, so these annotations are redundant.
They were incorrect, anyway (property type was used instead of delegate
type).
2020-06-23 20:18:42 +03:00
Mikhail Bogdanov
41511898a1
Deprecate DefaultImpl methods in compatibility mode
2020-06-23 18:59:04 +02:00
Mikhail Glukhikh
d08f91bf35
[FIR2IR] Introduce & use lazy function for external class functions
2020-06-23 19:06:08 +03:00
Mikhail Glukhikh
0622be14a5
[FIR2IR] Introduce creation of Fir2Ir lazy classes
2020-06-23 19:06:07 +03:00
Jinseong Jeon
856ac76c8f
FIR2IR: handle type alias inside GetClassCall
2020-06-23 09:46:47 +03:00
Dmitry Petrov
e9231b5624
JVM: Generate object and companion object INSTANCE fields as @NotNull
2020-06-22 16:28:00 +03:00
Dmitriy Novozhilov
be2ac3bb4f
[FIR] Fix completing bodies of property setters with delegates
2020-06-22 12:29:26 +03:00
Ilya Gorbunov
696701d377
Drop deprecated MutableMap property delegation operator
2020-06-22 12:29:25 +03:00
Ilya Gorbunov
7632910ffd
Drop deprecated CollectionAssertions.kt
...
Remove incorrect import from callByWithEmptyVarArg test
2020-06-22 12:29:25 +03:00
Jinseong Jeon
67044f22ed
FIR serializer: regard property accessors with modifiers as non-default
2020-06-22 12:25:47 +03:00
Dmitry Petrov
a493b21c7c
JVM_IR: Deprecation cycle for companion object instance visibility
2020-06-19 20:41:54 +03:00
Dmitriy Novozhilov
9f55d4f3cd
[FIR-TEST] Mute test failing due to KT-39614
2020-06-19 15:53:01 +03:00
Dmitriy Novozhilov
87859b0faa
[FIR] Introduce new algorithm for building CFG for declarations
2020-06-19 15:53:00 +03:00
Mikhail Bogdanov
e93bcc55ae
Revert "Deprecate DefaultImpl methods in compatibility mode"
...
This reverts commit 6c9c2a28
2020-06-19 12:58:46 +02:00
Mikhail Bogdanov
6c9c2a287d
Deprecate DefaultImpl methods in compatibility mode
2020-06-19 12:23:05 +02:00
Mikhail Bogdanov
9c0b96af71
Report error on missed specialization in compatibility mode
...
#KT-39603 Fixed
2020-06-19 11:57:36 +02:00
Mikhail Bogdanov
b8f0ad2111
Generate nullability annotations on this receiver in DefaultImpls. Don't generate nullability annotations in private methods
...
#KT-36969 Fixed
2020-06-19 11:57:35 +02:00
Mikhail Bogdanov
5bdf3d5757
Don't generate compatibility stubs for @JvmDefaultWithoutCompatibility
2020-06-19 11:57:35 +02:00
Jinseong Jeon
b076bec07f
FIR deserializer: signature-aware annotation loading for functions
2020-06-19 10:21:09 +03:00
Abduqodiri Qurbonzoda
194791a168
Introduce minByOrNull and maxByOrNull extension functions #KT-38854
2020-06-19 04:53:51 +03:00
Victor Petukhov
ece61915de
NI: clean calls in coroutine inference before the second analysis of += only for right side
...
^KT-39660 Fixed
2020-06-18 17:09:59 +03:00
Igor Chevdar
2fd657b768
[box-tests] Fixed test for K/N
2020-06-18 18:44:11 +05:00
Jinseong Jeon
82ef6bf96c
FIR2IR: honor user-contributed members in data class if any
2020-06-18 14:23:52 +03:00
Mikhail Glukhikh
b839a91050
Mute 3 FIR BB tests due to LowPriorityInOverloadResolution in reflect
...
Recently second javaType function appeared in reflect and
now FIR can't correctly resolve the code :(.
Will be fixed after annotation deserialization full support
2020-06-18 13:39:48 +03:00
Mikhail Glukhikh
d009c90e3a
Revert "Mute two FIR BB tests due to LowPriorityInOverloadResolution in reflect"
...
This reverts commit 3768af4f
2020-06-18 13:24:38 +03:00
Mikhail Glukhikh
3768af4f92
Mute two FIR BB tests due to LowPriorityInOverloadResolution in reflect
...
Recently second javaType function appeared in reflect and
now FIR can't correctly resolve the code :(.
Will be fixed after annotation deserialization full support
2020-06-18 13:21:35 +03:00
Mikhail Zarechenskiy
a067d138e9
Enable test for new inference after df1595e4
...
Follow up KT-37149
2020-06-18 12:41:27 +03:00
Georgy Bronnikov
ee6d432ced
Add forgotten test files
2020-06-18 12:22:53 +03:00
Igor Chevdar
cf6eb138ce
[box-tests] Turned on a test for JS_IR
2020-06-18 13:17:38 +05:00
Igor Chevdar
3634ad2d54
Added a test
2020-06-18 12:44:48 +05:00
Jinseong Jeon
9e9ca4953f
FIR2IR: coerce to Unit when "when" expr is not effectively exhaustive
2020-06-18 09:23:32 +03:00
Dmitry Petrov
4739adb6dc
KT-36992 Do not generate annotations on synthetic accessors
...
Also, do not generate nullability annotations on synthetic methods.
2020-06-17 23:54:51 +03:00
Steven Schäfer
03651f1dd4
IR: Fix inner class type parameters in IrTypeSystemContext
2020-06-17 22:10:00 +03:00
Georgy Bronnikov
c015463926
IR: remove field fake overrides
2020-06-17 20:02:26 +03:00
Georgy Bronnikov
1bb3f60bad
IR: use super qualifier in Java field accesses
2020-06-17 20:02:26 +03:00
Ilya Gorbunov
2fe222e8e7
Add SKIP_DCE_DRIVEN directive in JS-IR tests
...
Otherwise they fail with a compiler exception:
"An operation is not implemented: SAM conversion"
2020-06-17 19:45:15 +03:00
Alexander Udalov
117aae8a6b
Use experimental javaType in full reflect where it's not supported yet
...
#KT-22936 Fixed
#KT-34344 Fixed
2020-06-17 18:33:08 +02:00
Victor Petukhov
447308dcfc
Revert "Revert "Revert "Completely rewrite reifiedIntTypeAnalysis, making it more streamline"""
...
This reverts commit 5567033b
2020-06-17 13:02:40 +03:00
Ilmir Usmanov
1cccceabb9
Revert "Fix merging two reference values"
...
This reverts commit 85e2392f
2020-06-17 13:02:40 +03:00
Ilmir Usmanov
d9821412d0
Do not generate fields for unused suspend lambda parameters
...
This also allows us to not spill them in the lambda.
But, disable this optimization for local named functions.
#KT-16222 In progress
2020-06-17 12:00:25 +02:00
Dmitry Petrov
02f6a03ff7
JVM_IR: fix nullability annotations on synthetic marker parameters
...
Synthetic marker parameters (of type
Lkotlin/jvm/internal/DefaultConstructorMarker;) don't have annotations
(including nullability annotations).
Also, for constructor accessors corresponding parameter should be
nullable (since we pass 'null' as an argument there).
KT-36966
2020-06-16 21:29:52 +03:00
Jinseong Jeon
f64f9c2144
FIR: inherit property accessor modifiers from property and vice versa
2020-06-16 19:17:27 +03:00
Steven Schäfer
846fc13519
JVM IR: Fix inline class constructor ABI (KT-37013, KT-37015)
2020-06-16 09:23:58 +03:00
Kristoffer Andersen
f0ff8f202c
[JVM IR] Use JVM8 support for unsigned int operations
...
- unmute tests
- add test to ensure JVM target is respected
- add test to cover smart-casted cases
- implement function matching and replacement
- Switching on uint constants
- introduce lowering for standard library replacements
2020-06-15 14:26:28 +03:00
Georgy Bronnikov
58a9c0c996
JVM_IR: remove descriptor usage from IrTypeMapper
2020-06-13 12:44:59 +03:00
Igor Chevdar
8b37a094fe
Added a test on possible name clash for SAM wrappers
2020-06-11 23:00:36 +05:00
Denis Zharkov
72b09ff323
FIR: Rename FirSuperTypeScope and reuse it for type parameter type
...
It would allow ConeKotlinType.scope return FirTypeScope
and thus pulling down org.jetbrains.kotlin.fir.scopes.FirScope#processOverriddenFunctions
(See the following commits)
2020-06-11 11:31:31 +03:00
Denis Zharkov
38922a84f1
FIR: Do not create synthetic properties for non-Java accessors
...
^KT-35495 Fixed
2020-06-11 11:01:43 +03:00
Jinseong Jeon
ab2a2b3a87
FIR2IR: eager conversion of annotations in Library class and members
2020-06-11 10:57:51 +03:00