Dmitriy Novozhilov
b454fcc1e0
[FIR] Save IR dumps to .ir.txt files instead of .txt in tests
...
This is needed to avoid clashes between different dumps from different
handlers
2021-10-12 17:26:36 +03:00
Victor Petukhov
ee728b6902
Use the new type inference for top-level callable reference resolution
...
^KT-47797 Fixed
^KT-47987 Fixed
^KT-45034 Fixed
^KT-48446 Fixed
^KT-13934 Fixed
2021-09-27 16:12:27 +03:00
Roman Artemev
14c91ca0de
[TEST] Set proper TARGET_BACKEND for jvm-specific irText tests
2021-06-16 21:16:43 +03:00
Dmitriy Novozhilov
7dc3be3b9b
[FIR2IR] Replace star projections with upper bounds for SAM conversion types
2021-03-24 12:56:15 +03:00
Roman Artemev
ab8f64a3ee
[FIR] Mute failing tests
2021-03-12 18:47:34 +03:00
Dmitriy Novozhilov
65ea4e184a
[FIR] Fix enhancement of FlexibleNullability and EnhancedNullability
...
- Add utilities to add new attribute to ConeAttributes
- Get rid of FlexibleNullability attribute (it can be easily inferred
for any flexible type at any moment)
- Fix determining of EnhancedNullability attribute
2021-03-11 13:10:04 +03:00
Alexander Udalov
e3dc112c5f
Add original KotlinType to rendered IrErrorType
...
Also improve an error message in `IrType.erasedUpperBound`, which seems
like a frequent first place where the JVM IR backend crashes in case an
error type has made it past psi2ir.
This will help in diagnosing problems such as KT-45016.
2021-03-09 21:07:53 +01:00
Dmitriy Novozhilov
da0fd7cc15
[FIR2IR] Approximate non-denotable types when converting ConeType to IrType
2021-03-02 19:11:21 +03:00
Mikhail Glukhikh
4bc630d82c
FIR2IR: enhance approximation of captured types
2021-02-11 11:48:34 +03:00
Mikhail Glukhikh
346ffb3acf
FIR2IR: support substitution for SAM types
2021-02-11 11:48:34 +03:00
Victor Petukhov
af3eaf5d71
Add explicit disabling ProhibitVarargAsArrayAfterSamArgument feature in tests as it's enabled by default in 1.5
2021-01-28 13:19:31 +03:00
Denis.Zharkov
b0b7f39c75
FIR: Do not use return statement for type of a block expression
...
Type of a block is a kind of irrelevant for lambdas: their type is much
more complicated and defined via FirDataFlowAnalyzer#returnExpressionsOfAnonymousFunction
at at FirCallCompleter.LambdaAnalyzerImpl#analyzeAndGetLambdaReturnArguments
2021-01-21 18:53:03 +03:00
Mads Ager
6fc0de39c2
[PSI2IR] Propagate smart cast information for variable loads.
...
This gives us more precise type information and can enable backend
optimizations. This was motivated by when expressions not compiled
to table switches in the JVM_IR backend.
Fixed KT-36845.
2021-01-11 12:01:47 +03:00
Jinseong Jeon
d753d21dee
FIR2IR: don't add SAM conversion for explicit subtype cases
2020-12-21 18:01:27 +03:00
Jinseong Jeon
3bca6ae893
FIR: allow lower bound of flexible type when finding contributed invoke
2020-12-21 18:01:25 +03:00
Jinseong Jeon
fe0c25693d
FIR2IR: do not convert @ExtensionFunctionType twice
2020-12-18 12:17:21 +03:00
Zalim Bashorov
7df6575a18
[IR] update testdata: unify representation for error nodes
2020-11-26 00:15:16 +03:00
Zalim Bashorov
c68040753d
[IR] dumpKotlinLike: add testdata for FIR tests
2020-11-26 00:15:13 +03:00
Zalim Bashorov
2dbd784a6a
[IR] update testdata: print else -> ...
2020-11-26 00:14:55 +03:00
Zalim Bashorov
e56787c0b0
[IR] update testdata: IrInstanceInitializerCall
2020-11-26 00:14:25 +03:00
Zalim Bashorov
ab8188b032
[IR] update testdata: removed extra indentation for function expressions
2020-11-26 00:14:23 +03:00
Zalim Bashorov
602f0ddbc8
[IR] update testdata after using maxBlankLines=1 for Printer
2020-11-26 00:14:20 +03:00
Zalim Bashorov
b518c19b38
[IR] update testdata: support for IrDelegatingConstructorCall
2020-11-26 00:14:17 +03:00
Zalim Bashorov
84d6e43590
[IR] update testdata: print arguments for annotations
2020-11-26 00:14:16 +03:00
Zalim Bashorov
2a19dc32f2
[IR] update testdata: better support for IrConstructorCall
2020-11-26 00:14:15 +03:00
Zalim Bashorov
fc5c674c60
[IR] update testdata
2020-11-26 00:14:11 +03:00
Zalim Bashorov
a5b224fda1
[IR] add new testdata after rebase
2020-11-26 00:14:07 +03:00
Zalim Bashorov
3b1a6389ab
[IR] update testdata after rebase
2020-11-26 00:14:06 +03:00
Zalim Bashorov
8d5facb15f
[IR] add testdata for dumpKotlinLike
2020-11-26 00:14:03 +03:00
Jinseong Jeon
4cb32cd38a
FIR2IR: add implicit NOT_NULL cast for @FlexibleNullability type
2020-11-18 13:06:48 +03:00
Denis Zharkov
233bb47b99
FIR: Fix SAM conversion for raw types with non-trivial TP upper bounds
2020-11-10 14:26:54 +03:00
Alexander Udalov
45a0850d95
Fix KotlinType.isNullabilityFlexible for types based on type parameters
...
In the compiler, this function was used in psi2ir (and it affected
nullability annotations in the resulting JVM class files), in "useless
elvis with null on the right side" diagnostic checker, and in light
classes.
#KT-42650 Fixed
2020-10-14 19:32:51 +02:00
Mikhail Glukhikh
b64b32e06b
FIR: keep captured types in substitution scope
2020-09-23 09:00:57 +03:00
Mikhail Glukhikh
e1b4108e4a
[FIR2IR] Mute some tests due to captured type problems
2020-09-14 18:08:30 +03:00
Mikhail Glukhikh
578e707ab9
FIR2IR: set VARIABLE_AS_FUNCTION origin only for invoke receivers
2020-09-14 10:09:32 +03:00
Jinseong Jeon
89ffce22d8
FIR2IR: set proper IR origin for variable as function
2020-09-14 09:05:08 +03:00
Dmitry Petrov
6746bd81d5
PSI2IR tests for KT-41735
2020-09-08 12:34:19 +03:00
Simon Ogorodnik
97b10b5ab3
[FIR2IR] Hack-in setting of extension function type annotation
2020-08-18 21:53:55 +03:00
Jinseong Jeon
7e22de1e24
FIR2IR: insert coerce-to-unit expressions in statement containers
2020-08-18 21:53:08 +03:00
Jinseong Jeon
bff36e0199
FIR2IR: convert annotations on FirTypeRef
2020-07-30 11:25:36 +03:00
Georgy Bronnikov
4ca98041cd
IR: update test data
2020-07-30 11:24:08 +03:00
Dmitriy Novozhilov
f283f2db43
[FIR] Improve diagnostic reporting & don't use error symbol for candidate if possible
...
Also introduce few new diagnostics:
- NONE_APPLICABLE more many inapplicable candidates
- HIDDEN for visible candidates
2020-07-28 20:46:56 +03:00
Mikhail Glukhikh
0622be14a5
[FIR2IR] Introduce creation of Fir2Ir lazy classes
2020-06-23 19:06:07 +03:00
simon.ogorodnik
ac1769a474
[FIR2IR] Support SAM constructors
2020-05-25 21:24:39 +03:00
Jinseong Jeon
615636ed55
FIR2IR: apply SAM conversion to arguments of functional type.
2020-05-15 15:08:43 +03:00
Mikhail Glukhikh
cdac6157a9
[FIR2IR] Force loading Java SAM from external classes
2020-05-14 14:07:40 +03:00
Mikhail Glukhikh
fe02c2bab3
FIR: return Unit from empty lambda
2020-04-20 17:05:34 +03:00
simon.ogorodnik
276c393141
[FIR] Support captured type parameters in java symbol provider
2020-04-13 20:26:19 +03:00
simon.ogorodnik
356e42196c
[FIR2IR] Fix inner class constructor receiver parameter type
2020-04-13 20:26:19 +03:00
simon.ogorodnik
132c8ee210
[FIR] Apply GOOD testData changes after type parameters support
2020-04-13 20:26:18 +03:00