Jinseong Jeon
6a28558d43
FIR deserializer: rename a callable kind that represents all "others"
2020-06-19 10:21:09 +03:00
Jinseong Jeon
12181e55c0
FIR deserializer: signature-aware annotation loading for constructors
2020-06-19 10:21:09 +03:00
Jinseong Jeon
955c7a1e5b
FIR2IR: handle deserialized class reference inside GetClassCall
2020-06-19 10:21:09 +03:00
Jinseong Jeon
781bfa20e8
FIR deserializer: fix conversion of class literal inside annotation array value.
2020-06-19 10:21:09 +03: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
simon.ogorodnik
a8cd8ad8f8
[FIR] Fix testData after changing anonymous object name
2020-06-19 01:52:02 +03:00
Ilya Matveev
03bb9138ad
[klib] Create ZipFileSystem from a Path instead of an URI
...
Calling FileSystems.newFileSystem(URI, ...) throws a
FileSystemAlreadyExistsException if a ZipFileSystem for this
URI is already created. We still can use a single instance
of ZipFileSystem by calling FileSystems.getFileSystem. In
this case we use reference counting to determine when this
instance can be safely closed.
But we cannot count references if the same ZipFileSystem is used
from different class loaders. This patch fixes this issue by
creating a file system from Path instead of an URI. Contract of
FileSystemProvider.newFileSystem(Path, ...) doesn't imply throwing
FileSystemAlreadyExistsException.
Issue #KT-37443 fixed
2020-06-18 14:17:59 +00: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
d44a7ff8f9
Add test for obsolete issue
...
The issue was fixed in df1595e
#KT-39630 Fixed
2020-06-18 13:05:42 +03:00
Yan Zhulanow
713a305f45
Update change data for IrTextTestCaseGenerated
...
Reason of changes: 098469eb85
2020-06-18 19:01:06 +09:00
Mikhail Zarechenskiy
a067d138e9
Enable test for new inference after df1595e4
...
Follow up KT-37149
2020-06-18 12:41:27 +03:00
Mikhail Zarechenskiy
df1595e4bc
Fix SAM conversions for derived classes
...
#KT-39535 Fixed
#KT-37149 Fixed
2020-06-18 12:36:30 +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
2bf73ccfe5
[IR] Supported extension receivers in SAM conversions
2020-06-18 13:17:38 +05:00
Ilya Muradyan
8c2baf0704
Add missing definitelyDoesNotContainName methods
2020-06-18 09:51:16 +02:00
Ilya Muradyan
573c60ed6b
Add missing recordLookup implementations
2020-06-18 09:51:16 +02:00
Igor Chevdar
3634ad2d54
Added a test
2020-06-18 12:44:48 +05:00
Igor Chevdar
ecf9727568
[IR] Supported IrEnumEntry
...
Fixes https://youtrack.jetbrains.com/issue/KT-38996
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
Georgy Bronnikov
36f22dafc5
IR: remove field fake override usage
...
Still a problem: Java static fields.
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
c0f4ee7dc9
Revert "Add missing definitelyDoesNotContainName methods"
...
This reverts commit b74692e9
2020-06-17 13:16:16 +03: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
Victor Petukhov
901b794af3
Use lexical scope from trace during checking suspend context if the analysis of engaged parent function isn't completed
...
^KT-39461 Fixed
2020-06-16 22:00:04 +03: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
Ilya Chernikov
2656eeb164
NI: Optimize some potential hot places
2020-06-16 20:13:58 +03:00
Mikhail Glukhikh
d385a9b29e
Add more detailed exception message in KtExpression.isUsedAsExpression
2020-06-16 19:17:29 +03:00
Jinseong Jeon
f64f9c2144
FIR: inherit property accessor modifiers from property and vice versa
2020-06-16 19:17:27 +03:00
Mikhail Glukhikh
6f957c7b31
Provide more accurate clash check in JsDeclarationTable
2020-06-16 19:17:26 +03:00
Mikhail Glukhikh
aaacbaaaec
Add KDoc to ObsoleteDescriptorBasedAPI
2020-06-16 19:17:24 +03:00
Mikhail Glukhikh
a035404c96
Mark IrSymbolBase/IrPublicSymbolBase.descriptor as obsolete API
2020-06-16 19:17:22 +03:00
Mikhail Glukhikh
3297237f3d
Drop ObsoleteDescriptorBasedAPI in ClassGenerator (module-wide)
2020-06-16 19:17:20 +03:00
Mikhail Glukhikh
fe61530357
Declare IrGeneratorContext.builtIns as obsolete descriptor-based API
2020-06-16 19:17:16 +03:00
Mikhail Glukhikh
ab5cb13dae
Rename: DescriptorBasedIr -> ObsoleteDescriptorBasedAPI
2020-06-16 19:17:14 +03:00
Mikhail Glukhikh
cbbb497edf
Make descriptor-based API in ir:tree more granular
2020-06-16 19:17:12 +03:00
Mikhail Glukhikh
c4b24548cb
IrValidator: report errors without rendering descriptors
2020-06-16 19:17:11 +03:00