Ilya Kirillov
8ee4c4e047
FIR IDE: introduce scoped fir functions
2020-09-23 21:43:57 +03:00
Ilya Kirillov
e19d2ecc73
FIR IDE: make FirModuleResolveState functions to be internal
2020-09-23 21:43:57 +03:00
Ilya Kirillov
8e41384f6d
FIR IDE: separate LowLevelFirApiFacade from completion
2020-09-23 21:43:56 +03:00
Ilya Kirillov
7cc714c598
FIR IDE: move all public low level api to separate package
2020-09-23 21:43:56 +03:00
Ilya Kirillov
4238fd3842
FIR IDE: fix compilation after rename registerJavaSpecificComponents -> registerJavaSpecificResolveComponents
2020-09-23 21:43:55 +03:00
Ilya Kirillov
a570be4e76
FIR IDE: fix compilation of AbstractFirIdeDiagnosticsCollector.kt
2020-09-23 21:43:55 +03:00
Ilya Kirillov
fa570710ee
FIR IDE: move diagnostic highlighting to separate
...
pass
2020-09-23 21:41:54 +03:00
Ilya Kirillov
04fca93b1e
FIR IDE: fix completion on parenthesized expression
2020-09-23 21:41:52 +03:00
Ilya Kirillov
879cf3b049
FIR IDE: do not fail whole completion on exception in lookup element creation
2020-09-23 21:41:52 +03:00
Ilya Kirillov
e9fb79741a
FIR IDE: fix completion in initializer
2020-09-23 21:41:51 +03:00
Roman Golyshev
1ab6595ae2
FIR Completion: Use name filtering in completion contributor
2020-09-23 21:41:51 +03:00
Roman Golyshev
75d8710bf6
FIR IDE: Add name filtering to scope KtScope and implementations
2020-09-23 21:41:50 +03:00
Roman Golyshev
dc600e3caf
FIR IDE: Fix buildKtType for ConeDefinitelyNotNullType
2020-09-23 21:41:49 +03:00
Ilya Kirillov
74298aae32
FIR IDE: invalidate sessions on exception
2020-09-23 21:41:48 +03:00
Ilya Kirillov
a743b80d17
FIR IDE: reuse up-to-date fir sessions
2020-09-23 21:41:47 +03:00
Ilya Kirillov
22c2d34b14
FIR IDE: add debug info when can not build KtType
2020-09-23 21:41:46 +03:00
Ilya Kirillov
a52262bf97
FIR IDE: run completion resolve under lock
2020-09-23 21:41:45 +03:00
Ilya Kirillov
f1c808384e
FIR IDE: do not resolve symbols by transitive module dependencies
2020-09-23 21:41:44 +03:00
Ilya Kirillov
01875635db
FIR IDE: do not resolve whole firFile in completion
2020-09-23 21:41:44 +03:00
Ilya Kirillov
2cfbfabe04
FIR IDE: do not recreate transformer phases & ScopeSession
2020-09-23 21:41:42 +03:00
Ilya Kirillov
9a99703f24
FIR IDE: implement incremental function analysis
2020-09-23 21:41:41 +03:00
Ilya Kirillov
8bcba00bb7
FIR IDE: do not resolve declarations if they are already resolved when we are inside lock
2020-09-23 21:41:40 +03:00
Ilya Kirillov
fc64d8d5e8
FIR IDE: reanalyse dependent modules only then they change
2020-09-23 21:41:40 +03:00
Ilya Kirillov
07be30c5db
FIR IDE: separate fir session for current module from dependent modules session
2020-09-23 21:41:39 +03:00
Ilya Kirillov
ab897752de
FIR IDE: remove invalid comments from FirIdeSessionFactory
2020-09-23 21:41:39 +03:00
Ilya Kirillov
4045c8fbf4
FIR IDE: fix invalid order of classes in classIdIfNonLocal
2020-09-23 21:41:38 +03:00
Ilya Kirillov
766063ba77
FIR IDE: optimize search for FirDeclaration by KtDeclaration
2020-09-23 21:41:37 +03:00
Ilya Kirillov
36e57545e8
FIR IDE: simplify psiModificationTrackerBasedCachedValue
2020-09-23 21:41:36 +03:00
Ilya Kirillov
73451b1616
FIR IDE: reresolve libraries only when they change
2020-09-23 21:41:35 +03:00
Ilya Kirillov
c48cc615dd
FIR IDE: use KtAnalysisSession as receiver
2020-09-23 21:41:35 +03:00
Ilya Kirillov
d4786e06a9
FIR IDE: ignore PCE when running lazy resolve phase
2020-09-23 21:41:34 +03:00
Ilya Kirillov
9130392eb9
FIR IDE: resolve symbol to status to get it modality
2020-09-23 21:41:34 +03:00
Ilya Kirillov
0c47d42659
FIR IDE: add failing multiModuleLazyResolve test
2020-09-23 21:41:33 +03:00
Ilya Kirillov
a3a59131b5
FIR IDE: fix passing whenWithHeiarchy test
2020-09-23 21:41:32 +03:00
Roman Golyshev
6d0a5a0bb2
KT-41346 Implement NoReorderImplementation without reordering
...
- See the documentation for `DeserializedMemberScopeHelper` for the full
info about the fix and the issue
- Add `preserveDeclarationsOrdering` setting to
`DeserializationConfiguration`
- Enable this setting in `DeserializerForClassfileDecompiler`
- Also, use `List` instead of `Collection` to pass members to
`DeserializedMemberScope`. It is done to emphasize that the order of
the members is important and may be used
- Review: https://jetbrains.team/p/kt/review/1627
- ^KT-41346 Fixed
2020-09-23 15:27:51 +00:00
Ilya Kirillov
622f71bd65
Fix binary compatibility with AS
...
#KT-42061 fixed
2020-09-23 18:25:07 +03:00
Alexander Udalov
84df996204
JVM IR: fix "step over" for inline function calls in conditions
...
Reimplement the same hacky approach used in the old backend (see
cc2fe6b0c6 ).
Previously, the debugger incorrectly stepped into Collections.kt on
"step over" inline function calls from stdlib like 'any'.
Since `if` and `when` expressions are represented the same way in IR,
the behavior is fixed for both of them. It's not the case in the old JVM
backend, where stepping over `when` conditions still suffers from the
same problem, which the newly added test checks.
2020-09-23 15:54:15 +02:00
Toshiaki Kameyama
4144adf4ee
Make internal: don't suggest in interface
...
#KT-35346 Fixed
2020-09-23 15:34:09 +02:00
Toshiaki Kameyama
6e8565917e
MapGetWithNotNullAssertionOperatorInspection: decrease severity to INFORMATION
...
#KT-33096 Fixed
2020-09-23 14:52:14 +02:00
Toshiaki Kameyama
a2bde2ffb2
Redundant overriding method: do not report when super method is not called
...
#KT-34959 Fixed
2020-09-23 14:12:06 +02:00
Dmitriy Novozhilov
896103b94b
[FIR] Properly resolve implicit invoke calls
...
#KT-41990 Fixed
2020-09-23 14:05:11 +03:00
Toshiaki Kameyama
bdf502edef
Override/Implement members: don't add 'external' modifier
...
#KT-33466 Fixed
2020-09-23 11:51:08 +02:00
Vladimir Dolzhenko
4e5c61cd2f
Notify if gradle points to invalid JDK
...
^KT-41141 Fixed
2020-09-23 09:44:07 +00:00
Vladimir Dolzhenko
be20a8bd80
Configure modules Kotlin language settings in a background with a progress
...
^KT-41936 Fixed
2020-09-23 09:18:52 +00:00
Dmitriy Dolovov
f0cbd6b1a5
HMPP: Avoid NPE during Kotlin facet serialization
...
^KT-42029
2020-09-23 10:39:11 +03:00
Alexander Udalov
fde7fc6951
JVM IR: use correct file for final test output check in debugger tests
...
Before this change, a test with incorrect .ir.out could pass if the test
execution result was equivalent to the main .out file, which was a bit
confusing.
2020-09-22 19:15:35 +02:00
Mads Ager
78483930bc
[JVM_IR] Fix offsets in constant propagation optimization.
...
Loads of temporary variables that contain constants are replaced
with a copy of the constant. This avoids locals loads and stores.
However, the copy of the constant needs to have the offset of
the load and not of the original constant.
Fixes KT-41963.
2020-09-22 19:12:06 +02:00
Toshiaki Kameyama
f20a6b7fe1
Change function signature: add/change receiver type
...
#KT-21799 Fixed
2020-09-22 18:07:24 +02:00
Mads Ager
9f3ce099ee
[JVM_IR] Fix line numbers for function reference invoke methods.
2020-09-22 16:59:46 +02:00
Kirill Shmakov
ec8465859c
Support rerun of MPP tests for jvm target
2020-09-22 14:44:22 +03:00