Dmitriy Novozhilov
5846db4eab
[FIR] Add symbol to FirFunction and all it's inheritors
2019-08-22 14:14:55 +03:00
Dmitriy Novozhilov
e3e1f3c2aa
[FIR] Fix transforming value parameters of anonymous functions
2019-08-22 14:14:55 +03:00
Dmitriy Novozhilov
d841090866
[FIR] Don't analyze properties with implicit types twice
...
Test `cast.kt` now don't work absolutely correct and implicit type of
value parameter in lambda is't replaced with error type, but it's
minor bug
2019-08-22 14:14:55 +03:00
Dmitriy Novozhilov
f1e56c4b3e
[FIR] Force resolving all declaration while resolving of body with implicit type
2019-08-22 14:14:55 +03:00
Dmitriy Novozhilov
e374242adf
[FIR] Fix propagating expected type for binary operator calls
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
ba7a137e74
[FIR] Add fir node for binary && and ||
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
908b6ade1d
[FIR] Fix incorrect do-while loop transforming order and IR generating
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
42f171a8d2
[IR] Minor. Extract irBuiltins from IrGeneratorContext to separate interface
...
It's necessary to using some util functions on IrGeneratorContext in IrToFir
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
b274c7567e
[FIR] Minor. Add transformResult to FirWhenBranch
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
a022f85776
[FIR] Minor. Add @BaseTransformedType to FirWhenBranch
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
f877fe40b3
[FIR] Fix expected type in invoke completion
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
57a2665b00
[FIR] Update tests for previous commit
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
e48959350c
[FIR] Infer type of when expressions and try expressions like it is function call
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
741ff958e8
[FIR] Add util function for extracting return arguments from block
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
fe3824d796
[FIR] Introduce FirResolvable
...
FirResolvable is an interface representates fir node wit calleeReference
It will be useful for infer `try` and `when` expressions as function call
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
beeba23cf0
[FIR] Minor. Wrap withScopeCleanup with try-finally
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
e944119f71
[FIR] Don't use implicit type as expected type of anonymous function
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
7861396246
[FIR] Add util function for creating functional cone type
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
637fb55a7b
[FIR] Add implementation of intersection types to Fir type system
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
1708a34eb8
[FIR] Fix incorrect findCommonIntegerLiteralTypesSuperType dummy implementation
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
e6bf3b3263
[FIR] Render nullability in type renderer, not in fir renderer
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
3e44bc805f
[FIR] Return error type from common super type if it present
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
6e2958880b
[FIR] Add forgotten replacing arguments in abbreviated type expansion
2019-08-22 10:55:07 +03:00
Dmitriy Novozhilov
317e3edba8
[FIR] Add default upper bound to type parameter in fir deserializer
2019-08-22 10:55:07 +03:00
Ilya Chernikov
315a9d66a0
Refactor more tasks to lazy API
2019-08-21 20:20:08 +02:00
Ilya Chernikov
2ed8fa7624
Convert main task creating helper to lazy API, refactor accordingly
2019-08-21 20:20:08 +02:00
Ilya Chernikov
0f41dc814f
Switch many common tasks defined in buildSrc to lazy creation
...
also refactor some locally defined tasks to the creation avoidance API
2019-08-21 20:20:08 +02:00
Ilya Chernikov
5208318f34
Fix dependency resolution during gradle project configuration
2019-08-21 20:17:53 +02:00
Mikhail Zarechenskiy
80fa591f10
Fix failing test because of slightly different diagnostics for LV=1.2
...
There are no `DEBUG_INFO_MISSING_UNRESOLVED` diagnostics for this test
if one runs it under LV=1.2. These diagnostics are not crucial
for the test (especially for version 1.2), so use it only with
the latest stable version
Plus, reuse test-data to check behavior in new inference
2019-08-21 18:41:13 +03:00
Alexander Udalov
5e3a11db8e
JVM IR: remove property accessor name hack in InterfaceDelegationLowering
...
#KT-28434 Fixed
2019-08-21 15:14:04 +02:00
Alexander Udalov
14a6a06166
JVM IR: do not use GenerationState.typeMapper
...
The only remaining usages are in IrTypeMapper, MethodSignatureMapper and
in InterfaceDelegationLowering.generateDelegationToDefaultImpl
2019-08-21 15:14:03 +02:00
Alexander Udalov
f64afbf152
JVM IR: reduce usages of IrTypeMapper.kotlinTypeMapper
2019-08-21 15:13:49 +02:00
Alexander Udalov
0c6ab69b52
JVM IR: do not use descriptors in IrTypeMapper.writeFormalTypeParameters
2019-08-21 15:13:49 +02:00
Alexander Udalov
598c6009f2
JVM IR: extract method signature mapping to MethodSignatureMapper
2019-08-21 15:13:47 +02:00
Alexander Udalov
6191fc10f0
JVM IR: introduce IrCallableMethod as a simpler replacement for CallableMethod
2019-08-21 15:10:57 +02:00
Alexander Udalov
7c4ed9c29e
JVM IR: remove unused code, minor cleanup
2019-08-20 14:16:30 +02:00
Igor Chevdar
8d2ccb7bcd
[IR] Taught inliner to work with inline suspend lambdas
2019-08-20 12:52:54 +03:00
pyos
7ff700ff97
JVM_IR: lower calls to @JvmStatic functions from other files.
...
Note: this currently results in invalid IR (but valid bytecode) if the
@JvmStatic function is imported, because its IR representation is
unlowered and therefore has a dispatch receiver, but the call will not.
2019-08-20 11:39:25 +03:00
Alexander Udalov
ad43bc23ea
Minor, add test case on SAM conversion over smart cast
2019-08-19 18:09:32 +02:00
Vladimir Dolzhenko
dd0e296af1
Use KotlinExceptionWithAttachments for ToFromOriginalFileMapper and MainFunctionDetector
2019-08-19 17:55:49 +02:00
victor.petukhov
fa29297fb1
Introduce workaround for back-end exception in the test cases parser code
2019-08-19 18:31:48 +03:00
victor.petukhov
9487d291da
Fail spec box tests if they have unexpected behaviour and passed
2019-08-19 18:31:48 +03:00
victor.petukhov
d8e5b068d5
Relinking spec tests
2019-08-19 18:31:46 +03:00
victor.petukhov
8465d690f1
Add spec tests for 'Type system' (introduction and 'kotlin.Any' type)
2019-08-19 18:31:45 +03:00
victor.petukhov
f78faeaa3c
Add test for consistency check between the Kotlin specification and spec tests
2019-08-19 18:31:44 +03:00
victor.petukhov
4f73e100d0
Add task to generate tests json map (is used for tool 'spec-tests-relinking recommender')
2019-08-19 18:31:43 +03:00
victor.petukhov
0e439263ce
Group spec tests and accompanying functionality into to packages: org.jetbrains.kotlin.spec (tests only) and org.jetbrains.kotlin.spec.utils (accompanying functionality)
2019-08-19 18:31:42 +03:00
victor.petukhov
cf692fb257
Implement tests map generator and refactor folder structure to spec tests linking
2019-08-19 18:31:40 +03:00
victor.petukhov
28da325a11
Actualize DFA spec tests
2019-08-19 18:31:39 +03:00
Igor Chevdar
ad8bcda99e
[IR] Merged K/N inliner with the common one
2019-08-16 18:32:19 +03:00