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
Ilmir Usmanov
85e2392fef
Fix merging two reference values
...
In this case, make the result of value type Object instead of unknown.
2020-06-09 20:52:29 +02:00
Ilmir Usmanov
5567033b33
Revert "Revert "Completely rewrite reifiedIntTypeAnalysis, making it more streamline""
...
This reverts commit 822c14814b .
2020-06-09 20:52:24 +02:00
Alexander Udalov
e801fad4d4
Minor, unmute test on fun interface inheritance for FIR
2020-06-09 20:00:37 +02:00
Alexander Udalov
6adad1055b
JVM IR: generate delegates to DefaultImpls for fun interfaces
2020-06-09 11:49:45 +02:00
Alexander Udalov
fc1217ba07
Generate delegates to DefaultImpls in fun interface wrappers
...
#KT-37436 Fixed
2020-06-09 11:44:31 +02:00
Alexander Udalov
77e479fda8
JVM IR: generate InnerClasses attribute for nested classes in annotation arguments
...
#KT-38853
2020-06-09 11:33:27 +02:00
Alexander Udalov
2793187bda
Handle IllegalArgumentException in trimMargin intrinsics on JVM
...
#KT-38537 Fixed
2020-06-09 11:11:06 +02:00
Mikhail Glukhikh
6f0eeecc64
[FIR2IR] Fix generation of type arguments of delegated constructor calls
2020-06-09 11:40:26 +03:00
Mikhail Glukhikh
b2c78e490e
[FIR2IR] Remove some descriptor-around calls
2020-06-09 11:40:25 +03:00
Mikhail Glukhikh
89e5e10657
[FIR2IR] Drop effectively unused FirMetadataSource.File.descriptors
...
NB: only FileClassLowering uses this property to check
whether facade is required, and IR-based check is enough in this lowering
2020-06-08 16:19:37 +03:00
Jinseong Jeon
ba1172b3ad
FIR2IR: distinguish substitution case when adding external fake overrides
2020-06-08 12:11:34 +03:00
Mikhail Glukhikh
3567880303
[FIR] Consider enum entry nested classes as local
2020-06-08 12:11:33 +03:00
Jinseong Jeon
0d2552b0b6
FIR: record and serialize the modifier "fun" for functional interface
2020-06-08 09:42:32 +03:00
Anton Bannykh
bd2a0563ad
JS: fix explicit cross-module SAM constructor calls
2020-06-06 13:20:37 +03:00
Ilmir Usmanov
f0006f2405
Minor. Add regression test
...
#KT-39374 Fixed
2020-06-05 21:30:24 +02:00
Jinseong Jeon
89c87f941f
FIR: consider the absence of type arguments when constructing GetClassCall type
2020-06-05 17:00:17 +03:00
Mikhail Zarechenskiy
718f23b34f
Compatibility warning for references to companion via name (KT-13934)
2020-06-05 13:24:18 +03:00
Ilmir Usmanov
8cc5f2abfb
Forbid val field initialization inside EXACLTY_ONCE lambda
...
unless the lambda is inline. This way, final field will remain final.
2020-06-04 21:26:48 +02:00
Steven Schäfer
3291cf7a6e
JVM IR: Mark lateinit fields as NotNull
...
This is needed for compatibility with the JVM backend.
2020-06-04 17:52:56 +02:00
Mikhail Glukhikh
6ad37eb7a8
Unmute two more FIR BB tests
2020-06-04 17:26:27 +03:00
Mark Punzalan
802beb49a6
Use TypeSubstitutor to get the substituted underlying type for inline
...
classes, instead of MemberScope.
The primary motivation was to fix issues around type-mapping for inline
classes in FIR, which uses wrapped descriptors that have empty
MemberScopes.
2020-06-04 17:03:55 +03:00
Mikhail Glukhikh
0ce47f2f12
[FIR TEST] Mute 2 BB tests broken by 0d6e3093
2020-06-04 16:34:39 +03:00
Alexander Udalov
5647a935a2
JVM IR: do not generate DefaultImpls delegate for collection fake overrides
...
In the newly added test, prior to this change, JVM IR was generating
DefaultImpls classes with calls to things like
`kotlin/collections/MutableList$DefaultImpls.spliterator` and other
default methods present in JDK 8+. This obviously didn't make much
sense. Although these weren't explicitly mentioned anywhere in the
bytecode, they caused some validation tools to report errors (e.g.
animalsniffer used in arrow).
2020-06-04 14:27:46 +02:00
Dmitry Petrov
202bbdf8dd
Forward compatibility hacks for Result.{success, failure}
...
Don't mangled functions annotated with @JvmName.
Annotate 'Result.success' and 'Result.failure' with @JvmName and
@Suppress("INAPPLICABLE_JVM_NAME").
NB this would require bootstrap.
2020-06-04 12:16:27 +03:00
Jinseong Jeon
0d6e309372
FIR: construct type with actual type arguments during GetClassCall transformation
2020-06-04 10:13:37 +03:00
Dmitry Petrov
a4b9e8fdc6
Minor: mute test in JS_IR
2020-06-03 23:24:16 +03:00
Ilmir Usmanov
822c14814b
Revert "Completely rewrite reifiedIntTypeAnalysis, making it more streamline"
...
This reverts commit 1ed4324613 .
Otherwise, bootstrap is broken.
2020-06-03 19:43:59 +02:00