Denis Zharkov
d4c7d4fc7c
FIR: Fix callable references resolution with stub receivers
...
Use stubReceiver as a receiver for fake calls
See issues KT-43358 KT-43359 KT-43378
2020-11-16 15:50:39 +03:00
Denis Zharkov
f97cc0b62d
FIR: Rework receivers processing in resolution
...
- Put extensionReceiver to candidate even if it's explicit (for sake of clarity)
- Split CheckReceiver (dispatch part should only check nullability)
2020-11-16 15:50:39 +03:00
Denis Zharkov
e2099a0307
FIR: Fix false-positive successful resolution of call with lambda receiver
...
Do not try to integrate/postpone receiver expression to the base system
Receiver should be resolved independently anyway
2020-11-16 15:50:39 +03:00
Denis Zharkov
396e799e5d
FIR: Fix resolution for type-alias based SAM
2020-11-16 15:50:39 +03:00
Denis Zharkov
4c9a4548f2
FIR: Fix overrides binding for Java inheritor
...
`overriddenMembers` contract requires original (non-enhanced) function
See other usages
Ignored tests have been working accidentally
^KT-43289 Open
2020-11-16 15:50:39 +03:00
Denis Zharkov
855af08f7c
Regenerate tests
2020-11-16 15:50:39 +03:00
Mikhail Glukhikh
4f7b45dfcc
Fir2IrTypeConverter: simplify captured type cache
2020-11-16 15:14:26 +03:00
Jinseong Jeon
cb77b76c0d
FIR2IR: convert recursive captured type properly
...
#KT-43346 Fixed
2020-11-16 15:14:24 +03:00
Mikhail Glukhikh
8ecf056927
[FIR2IR] Enter scope a bit earlier in createIrPropertyAccessor
2020-11-16 14:44:43 +03:00
Mikhail Glukhikh
59c86bcdc4
[FIR2IR] Provide more information for errors inside convertToIrSetCall
2020-11-16 14:44:42 +03:00
Mikhail Glukhikh
9de244515e
Upgrade coroutines: 1.3.7 -> 1.3.8
2020-11-16 14:29:58 +03:00
Dmitry Petrov
93f868fb96
KT-43196 member extension property can't be "primary" in inline class
2020-11-16 13:54:19 +03:00
Vladimir Dolzhenko
b6f958f856
Do not queue bg task under read action
...
Relates to #EA-218701
2020-11-16 09:25:08 +00:00
Dmitriy Dolovov
6e7b5a55b3
kotlinx-metadata: Don't write flags for absent property accessors
2020-11-13 22:54:34 +03:00
Dmitriy Novozhilov
a6cbae9719
[FIR] Rename FirErrors.SYNTAX_ERROR to SYNTAX
2020-11-13 16:19:30 +03:00
Dmitriy Novozhilov
2f5b231d50
[FIR] Add default renderers to FirDiagnosticFactories
2020-11-13 16:19:30 +03:00
Dmitriy Novozhilov
dc662efcf4
[FIR] Introduce FirDiagnosticRenderers
2020-11-13 16:19:29 +03:00
Dmitriy Novozhilov
ed0e5adce7
[FIR] Make FirAnalyzerFacade returns diagnostics grouped by fir file
2020-11-13 16:19:29 +03:00
Dmitriy Novozhilov
dabc259ae8
[FIR] Make diagnostics collectors returns List instead of Iterable
2020-11-13 16:19:29 +03:00
Dmitriy Novozhilov
20453bf0d8
[FIR] Get rid of FirSessionProvider.project property
2020-11-13 16:19:29 +03:00
Dmitriy Novozhilov
82a2ecfe14
[FIR] Cleanup creating sessions in CLI FIR compiler
2020-11-13 16:19:29 +03:00
Dmitriy Novozhilov
3aa8b09e31
[FIR] Add configurable language version settings to FirSessionFactories
2020-11-13 16:19:29 +03:00
Dmitry Petrov
5d76df6e1a
KT-43045 mangle function name for fake override with default impl
2020-11-13 16:15:29 +03:00
Mads Ager
1ecf5943ab
[JVM_IR] Determine correct type of empty varargs array.
...
When calling vararg methods with a generic vararg type without
passing explicit parameters, we have to allocate an empty array
of the right type. We failed to do so previously, as we did
not take the type arguments for the dispatch receiver into
account.
2020-11-13 12:13:53 +01:00
Georgy Bronnikov
ffc003c051
IR: copy IrProperty's attributes in deepCopyWithSymbols
2020-11-13 11:44:35 +03:00
Yan Zhulanow
7b98876475
Parcelize: Fix typo in diagnostic message (KT-43290)
2020-11-13 17:37:21 +09:00
Dmitriy Novozhilov
e3bfb9245c
[FIR] Rename nested directory with testdata to innerClasses
...
This is needed to avoid clashing name of generated test class (`Nested`)
with annotation @Nested from JUnit 5
2020-11-13 10:36:39 +03:00
Dmitriy Novozhilov
419f54259c
[TEST] Change semantics of CHECK_TYPE directive and update testdata
...
Previously helpers from checkType.kt was in special package, and
if directive was enabled then test runner (`AbstractDiagnosticTest`)
injected additional imports to test files and removed them after test
was completed.
It's very hard to support such behavior in new test infrastructure so
there was a decision about changing `CHECK_TYPE`:
1. All helpers from `checkType.kt` now stays in default package
2. `CHECK_TYPE` only adds `checkType.kt` to set of analyzed files
and don't modify their content
For test which are written in default package (most of tests actually)
there are no changes. On the other hand if there is a test where dev
want to use checkType functions in testfile with some package then he
should explicitly import functions which he needed (`checkSubtype`,
`checkType`, `_`)
2020-11-13 10:36:12 +03:00
Dmitry Petrov
653b26174b
KT-43006 don't generate no-arg constructor with inline class parameters
2020-11-13 09:59:34 +03:00
Georgy Bronnikov
364773bf0f
IR: fix IrClassSymbol.starProjectedType
2020-11-12 21:49:11 +03:00
Dmitriy Dolovov
f5329b6f1d
[Commonizer] Don't publish sources and javadocs
2020-11-12 17:23:52 +03:00
Dmitriy Novozhilov
15cc979378
[FIR] Add enter contract node as exit for exceptional path to avoid compiler crashing
...
This fixes crashing test
`FirDiagnosticsTestSpecGenerated.NotLinked.Contracts.Declarations.ContractBuilder.Common.Neg.test17`
2020-11-12 14:46:39 +03:00
Dmitriy Novozhilov
87380d1913
[FIR] Don't assume that exit lambda node is target for exceptional exit for inplace lambdas
...
#KT-39709 Fixed
#KT-43156 Fixed
2020-11-12 14:46:38 +03:00
Jinseong Jeon
440cf78884
FIR CFG: add more uncaught exception paths
2020-11-12 14:46:37 +03:00
Jinseong Jeon
7b06885348
FIR checker: reproduce KT-43156
2020-11-12 14:46:36 +03:00
Dmitriy Novozhilov
f4347a60c2
[FIR] Fix typo
2020-11-12 14:46:35 +03:00
Mikhail Glukhikh
3c48f2eb68
[FIR] Handle isProp/setProp synthetic pair properly in Java use-site scope
2020-11-12 13:37:38 +03:00
Mikhail Glukhikh
2725930460
[FIR] Code cleanup in JavaClassUseSiteMemberScope
2020-11-12 13:37:37 +03:00
Mikhail Glukhikh
fb961f7070
[FIR] Copy also synthetic setter during fake override generation
2020-11-12 13:37:37 +03:00
Mikhail Glukhikh
22fb620344
[FIR Java] Copy also synthetic setter during enhancement
2020-11-12 13:37:37 +03:00
Mikhail Glukhikh
e0abf3a62c
[FIR Java] More precise synthetic setter search in use-site scope
...
In this commit we detect both Java void & Kotlin Unit return types
2020-11-12 13:37:37 +03:00
Mikhail Glukhikh
c515af4373
Fir2IrDeclarationStorage: extract common getIrCallableSymbol
2020-11-12 13:37:37 +03:00
Mikhail Glukhikh
b90391ced4
[FIR2IR] Implement getIrConstructorSymbol like getIrFunctionSymbol
2020-11-12 13:37:36 +03:00
Mikhail Glukhikh
0cc57fc90c
Fir2IrDeclarationStorage: reorder functions slightly
2020-11-12 13:37:36 +03:00
Mikhail Glukhikh
90f135dc3e
[FIR2IR] Use computeDeclarationOrigin in getIrPropertySymbol
2020-11-12 13:37:36 +03:00
Mikhail Glukhikh
6c1f5a4513
[FIR2IR] Cache functions/properties both by symbol & signature
2020-11-12 13:37:36 +03:00
Mikhail Glukhikh
92840b8ec5
FirTypeIntersectionScope: fix typo in name
2020-11-12 13:37:35 +03:00
Mikhail Glukhikh
5b947144d4
FirTypeIntersectionScope: don't create in no-supertypes situation
2020-11-12 13:37:35 +03:00
Mikhail Glukhikh
8ace0d9ad1
[FIR] Replace local types with Any in deserializer
2020-11-12 13:37:35 +03:00
Mikhail Glukhikh
744918fb47
[FIR] Cleanup ConeIntegerLiteralTypeImpl
2020-11-12 13:37:35 +03:00