Dmitry Petrov
68c3f30aa7
JVM_IR KT-47510 indy callee parent is a package fragment, not a class
2021-06-29 17:00:31 +03:00
Ilya Goncharov
b678cc3c90
[JS IR] Fast return in boolean externals lowering
...
- Put fqname when available instead of just name
2021-06-29 10:12:56 +00:00
Ilya Goncharov
82f979b11f
[JS IR] Add property name to boolean in externals diagnostic
2021-06-29 10:12:55 +00:00
Ilya Goncharov
21a3494bca
[JS IR] Add test with boolean in external interface
...
[JS IR] Add possibility to safely access Boolean in external declaration
[JS IR] Add diagnostic for booleans in externals
2021-06-29 10:12:54 +00:00
Tianyu Geng
2e049c1208
FIR DFA: fix CFG with normal arg after lambda [KT-46825]
...
The fix is a bit hacky, but it's very simple. In addition, it still does
not handle the case where the receiver is a lambda function. But such
case seems to be fairly rare in practice.
2021-06-29 10:46:41 +03:00
Tianyu Geng
b78b50e1f8
FIR DFA: workaround KT-46826
2021-06-29 10:46:40 +03:00
Tianyu Geng
0ecc752813
FIR checker: report SMARTCAST_IMPOSSIBLE for local variables
2021-06-29 10:46:38 +03:00
Dmitry Gridin
274bae1d05
KtArrayAccessReference: remove redundant functions
2021-06-29 10:04:27 +07:00
Alexander Udalov
4b7fa44e80
CLI: fix resolution of Java records as single file roots
...
#KT-46764 Fixed
2021-06-29 01:22:08 +02:00
Ivan Kochurkin
e295849733
[FIR] Refactor FirSupertypesChecker: split big function on small ones
2021-06-29 02:00:11 +03:00
Ivan Kochurkin
fb9ce06ff5
[FIR] Implement DELEGATION_NOT_TO_INTERFACE
2021-06-29 02:00:11 +03:00
Ivan Kochurkin
c3a6ba52f6
[FIR] Implement CLASS_CANNOT_BE_EXTENDED_DIRECTLY
2021-06-29 02:00:10 +03:00
Ivan Kochurkin
92d7a61b4f
[FIR] Implement INCONSISTENT_TYPE_PARAMETER_VALUES, INCONSISTENT_TYPE_PARAMETER_BOUNDS
2021-06-29 02:00:09 +03:00
Ivan Kochurkin
ec20f52707
[FIR] Implement EXPANDED_TYPE_CANNOT_BE_INHERITED, PROJECTION_IN_IMMEDIATE_ARGUMENT_TO_SUPERTYPE
...
Add `starAsModifier` to `modifierSetPosition`
2021-06-29 02:00:08 +03:00
Ivan Kochurkin
937846b62d
[FIR] Implement TYPEALIAS_SHOULD_EXPAND_TO_CLASS
2021-06-29 02:00:06 +03:00
Ivan Kochurkin
e8a790993b
[FIR] Add ConeUnsupportedDynamicType
2021-06-29 02:00:03 +03:00
Denis.Zharkov
0ec693db89
Fix parsing regression related to T!!
...
^KT-47445 Fixed
2021-06-28 21:48:13 +03:00
Dmitry Petrov
768afc5ba4
JVM_IR KT-47492 fix 'for' loop generation
2021-06-28 21:07:54 +03:00
Roman Artemev
6993b86d3b
[IR] Fix IrCapturedType equals/hashCode
...
It could lead to SOE if CT has itself as superType
- fix KT-47424
2021-06-28 20:43:14 +03:00
Dmitry Petrov
7ccefebf1c
PSI2IR flatten more levels of indirection to avoid SOE in big exprs
2021-06-28 18:18:27 +03:00
Igor Yakovlev
cd0ea7f7f7
[FIR] Add explicit types to needReplacePhase transformers methods
2021-06-28 17:21:43 +03:00
Igor Yakovlev
30c381f16d
[FIR] Fix invalid CallableId for methods in anonymous objects
2021-06-28 17:21:42 +03:00
Zalim Bashorov
a908e5576d
[JS] Extract sourcemap generating related files to a separate module
...
It's required to reuse the same infrastructure in the new backend.
2021-06-28 16:04:09 +03:00
Dmitry Petrov
560c269e05
PSI2IR KT-47450 prevent SOE when generating IR for deep expressions
2021-06-28 15:41:41 +03:00
Anton Bannykh
d303b783be
KLIB: serialization support for global signatures and lowered IR features
...
Including:
- returnable blocks
- raw function references
- standalone type and value parameters
- file symbols
2021-06-27 22:56:35 +03:00
Anton Bannykh
6f01789139
IR: public symbols for the new global signatures
2021-06-27 22:56:35 +03:00
Anton Bannykh
aa5e7c65be
KLIB: queue modules instead of ModuleDeserializationState
...
This approach is more general and expandable.
2021-06-27 22:56:35 +03:00
Anton Bannykh
e4707b236b
JS IC: new signatures
...
Lowered IR might have cross-file references for fields, type parameters
and other stuff. Thus there is a need to make file-local and scope-local
signatures unique at least within a module.
2021-06-27 22:56:34 +03:00
Anton Bannykh
eba0661016
JS IC: .proto update
2021-06-27 22:56:34 +03:00
Anton Bannykh
b77d481ac6
IR: hide assert behind a flag
...
In JS IC the symbol might be unbound at this moment
2021-06-27 22:56:34 +03:00
Anton Bannykh
dbeb09af89
IR: fix SecondaryCtorLowering.kt
2021-06-27 22:56:34 +03:00
Anton Bannykh
bd4e7ffef8
JS PIR: store signatures for lowered declarations inside PIR declarations
2021-06-27 22:56:33 +03:00
Anton Bannykh
e0bdabcf61
JS IR: fix js SAM lowering
2021-06-27 22:56:33 +03:00
Anton Bannykh
9462131014
JS IR: fix offsets in BlockDecompositionLowering
2021-06-27 22:56:33 +03:00
Anton Bannykh
600099585d
IR: refactor IdSignatureSerializer
...
Use a separate instance for each file.
2021-06-27 22:56:33 +03:00
Dmitriy Novozhilov
a8501bcef5
[FE 1.0] Fix message of INTEGER_OPERATOR_RESOLVE_WILL_CHANGE warning
...
^KT-47446 Fixed
2021-06-26 13:46:27 +03:00
Mikhael Bogdanov
5f62b72c82
Properly process big types
2021-06-26 06:10:16 +02:00
Mikhael Bogdanov
0fd1f549a9
Properly process special symbols during indy-with-constants concatenation
...
#KT-47320 Fixed
2021-06-26 06:10:16 +02:00
Zalim Bashorov
e947556aaa
[IR] Use separate directories for each module for IR dumps
...
It allows avoiding overwriting content generated for other modules.
Also, added using additional ".kt" prefix to file extension for dumps generated with Kotlin like syntax.
2021-06-26 01:38:04 +03:00
Ivan Kochurkin
568eb255f5
[FIR] Split UpperBoundViolated checkers on two files (expression and declaration), add FirUpperBoundViolatedHelpers
2021-06-25 20:57:48 +03:00
Ivan Kochurkin
a26ffde820
[FIR] Correct support of projections and type aliases for UPPER_BOUND_VIOLATED, extend tests
2021-06-25 20:57:47 +03:00
Ivan Kochurkin
66e2b44272
[FIR] Implement UPPER_BOUND_VIOLATED_IN_TYPEALIAS_EXPANSION diagnostics, fix handling of UPPER_BOUND_VIOLATED
2021-06-25 20:57:46 +03:00
Ivan Kochurkin
5741374883
[FIR] Report UPPER_BOUND_VIOLATED only on checkers stage, fix detection of missing cases and testData
2021-06-25 20:57:45 +03:00
Ivan Kochurkin
ada14413e0
[FIR] Fix location of UPPER_BOUND_VIOLATED, fix detecting of several diagnostics, simplify FirUpperBoundViolatedChecker.kt
2021-06-25 20:57:44 +03:00
Dmitry Petrov
1298ba431b
JVM_IR KT-47449 handle star projection arguments in default lambda types
2021-06-25 20:42:22 +03:00
Yahor Berdnikau
430306b23d
Change 'jvmTarget' backing property visibility to internal.
...
Allows to check if this property was updated by the user or not.
^KT-45611 In Progress
^KT-43095 In Progress
2021-06-25 16:28:54 +00:00
Denis.Zharkov
7645663d12
Deprecate (V)::a reference resolution to companion in FE 1.0
...
^KT-45315 Fixed
2021-06-25 18:41:14 +03:00
Denis.Zharkov
46b297477c
Deprecate ambiguous cases in FE 1.0: companion property vs enum entry
...
^KT-37591 Fixed
2021-06-25 18:41:12 +03:00
Dmitriy Novozhilov
24bb9a4e14
Approximate expected type before reporting INTEGER_OPERATOR_RESOLVE_WILL_CHANGE
...
^KT-47447 Fixed
2021-06-25 18:39:01 +03:00
Dmitriy Novozhilov
05883afc0a
Deprecate simplification of complex boolean constant expressions in whens and loops
...
^KT-39883 In Progress
2021-06-25 16:37:35 +03:00