Ilya Gorbunov
696701d377
Drop deprecated MutableMap property delegation operator
2020-06-22 12:29:25 +03:00
Jinseong Jeon
67044f22ed
FIR serializer: regard property accessors with modifiers as non-default
2020-06-22 12:25:47 +03:00
Dmitriy Novozhilov
a7675c16d5
[FIR] Fix problems with renaming invocationKind and field in FirAnonymousFunction
2020-06-19 16:28:07 +03:00
Mikhail Zarechenskiy
9c8e979308
Fix compatibility resolve for references with multiple outer candidates
...
#KT-39533 Fixed
2020-06-19 16:21:24 +03:00
Dmitriy Novozhilov
bd8eaad885
[FIR-TEST] Update cfg dumps in some tests
...
One of previous commit changed order for those graphs, but i didn't
find which one
2020-06-19 15:53:11 +03:00
Dmitriy Novozhilov
d01817ce14
Rename InvocationKind to EventOccurrencesRange
2020-06-19 15:53:11 +03:00
Dmitriy Novozhilov
1dfccf1416
[FIR] Rename edge kinds of control flow graph
2020-06-19 15:53:10 +03:00
Dmitriy Novozhilov
26458875d5
[FIR] Add checker for uninitialized properties
2020-06-19 15:53:09 +03:00
Dmitriy Novozhilov
25621d699b
Add methods for combine InvocationKind's
...
There is two methods added -- `or` and `and`
`or` is used by CFA for combining two kinds that came from different
edges of control flow graph
`and` is analog of `+` operator for invocation kinds
2020-06-19 15:53:08 +03:00
Dmitriy Novozhilov
4078b4b6f9
[FIR] Prepare ControlFlowAnalysisDiagnosticComponent
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
c9bc5884dd
[FIR] Add more utils for traversing control flow graph
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
faa0f07d09
[FIR] Add utility flags to EdgeKind
2020-06-19 15:53:07 +03:00
Dmitriy Novozhilov
5ecbf8b7cd
[FIR] Add CFGNodeWithCfgOwner to detect subgraphs in CFA
2020-06-19 15:53:06 +03:00
Dmitriy Novozhilov
05ee436db0
[FIR] Introduce FirControlFlowGraphOwner node
2020-06-19 15:53:06 +03:00
Dmitriy Novozhilov
8a81a09fd0
[FIR] Assume that when without branches is not exhaustive. KT-39621
2020-06-19 15:53:05 +03:00
Dmitriy Novozhilov
12ed8c3bb4
[FIR-TEST] Update CFG dumps according to new nodes order
2020-06-19 15:53:04 +03:00
Dmitriy Novozhilov
4e6542a646
[FIR] Add Stub kind for CFG
...
Edges of stub graphs shouldn't be completed
2020-06-19 15:53:04 +03:00
Dmitriy Novozhilov
1a0df97961
[FIR] Pop and complete graph only after adding last edge to it
2020-06-19 15:53:03 +03:00
Dmitriy Novozhilov
3765c5119f
[FIR] Cache nodes in sorted order in CFG
2020-06-19 15:53:02 +03:00
Dmitriy Novozhilov
87859b0faa
[FIR] Introduce new algorithm for building CFG for declarations
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
950bbfe3a5
[FIR] Add kind for back edges in CFG
2020-06-19 15:53:00 +03:00
Dmitriy Novozhilov
34be9e3569
[FIR] Add controlFlowGraph references to value parameters
2020-06-19 15:52:59 +03:00
Dmitriy Novozhilov
65fae3bb0c
[FIR] Fix problem with local classes in anonymous objects
2020-06-19 15:52:58 +03:00
Dmitriy Novozhilov
5b64c0cfe2
[FIR] Add different states for CFG and some assertions for graph modification
2020-06-19 15:52:57 +03:00
Dmitriy Novozhilov
1261f62afb
[FIR] Extract CFGNode and it's inheritors to separate file
2020-06-19 15:52:56 +03:00
Dmitriy Novozhilov
3a4f53682f
[FIR] Don't convert non-local functions without name as FirAnonymousFunction
2020-06-19 15:52:56 +03:00
Mikhail Bogdanov
9c0b96af71
Report error on missed specialization in compatibility mode
...
#KT-39603 Fixed
2020-06-19 11:57:36 +02:00
Mikhail Bogdanov
477cca3c99
Add JvmDefaultWithoutCompatibility annotation
2020-06-19 11:57:35 +02:00
Dmitriy Novozhilov
a98ad79d86
[FIR-TEST] Add option to run modularized tests with checkers
2020-06-19 12:40:02 +03:00
Denis Zharkov
efee0dae94
FIR: Simplify JvmBinaryAnnotationDeserializer
...
Currently, it's anyway created one per class
2020-06-19 10:21:09 +03:00
Denis Zharkov
0bc2642634
FIR: Add clarification to the workaround for KT-39659
2020-06-19 10:21:09 +03:00
Denis Zharkov
429b2a9705
FIR: Optimize deserialized annotations loading
2020-06-19 10:21:09 +03:00
Denis Zharkov
260e2d0dc3
FIR: Add dependency for :core:descriptors.runtime to modularized tests
...
Otherwise NoClassDefFoundError happens on JPS
2020-06-19 10:21:09 +03:00
Jinseong Jeon
6a28558d43
FIR deserializer: rename a callable kind that represents all "others"
2020-06-19 10:21:09 +03:00
Jinseong Jeon
12181e55c0
FIR deserializer: signature-aware annotation loading for constructors
2020-06-19 10:21:09 +03:00
Jinseong Jeon
955c7a1e5b
FIR2IR: handle deserialized class reference inside GetClassCall
2020-06-19 10:21:09 +03:00
Jinseong Jeon
781bfa20e8
FIR deserializer: fix conversion of class literal inside annotation array value.
2020-06-19 10:21:09 +03:00
Jinseong Jeon
b076bec07f
FIR deserializer: signature-aware annotation loading for functions
2020-06-19 10:21:09 +03:00
Abduqodiri Qurbonzoda
194791a168
Introduce minByOrNull and maxByOrNull extension functions #KT-38854
2020-06-19 04:53:51 +03:00
Victor Petukhov
ece61915de
NI: clean calls in coroutine inference before the second analysis of += only for right side
...
^KT-39660 Fixed
2020-06-18 17:09:59 +03:00
Jinseong Jeon
82ef6bf96c
FIR2IR: honor user-contributed members in data class if any
2020-06-18 14:23:52 +03:00
Mikhail Zarechenskiy
d44a7ff8f9
Add test for obsolete issue
...
The issue was fixed in df1595e
#KT-39630 Fixed
2020-06-18 13:05:42 +03:00
Mikhail Zarechenskiy
df1595e4bc
Fix SAM conversions for derived classes
...
#KT-39535 Fixed
#KT-37149 Fixed
2020-06-18 12:36:30 +03:00
Igor Chevdar
3634ad2d54
Added a test
2020-06-18 12:44:48 +05:00
Jinseong Jeon
9e9ca4953f
FIR2IR: coerce to Unit when "when" expr is not effectively exhaustive
2020-06-18 09:23:32 +03:00
Steven Schäfer
03651f1dd4
IR: Fix inner class type parameters in IrTypeSystemContext
2020-06-17 22:10:00 +03:00
Georgy Bronnikov
c015463926
IR: remove field fake overrides
2020-06-17 20:02:26 +03:00
Alexander Udalov
117aae8a6b
Use experimental javaType in full reflect where it's not supported yet
...
#KT-22936 Fixed
#KT-34344 Fixed
2020-06-17 18:33:08 +02:00
Victor Petukhov
447308dcfc
Revert "Revert "Revert "Completely rewrite reifiedIntTypeAnalysis, making it more streamline"""
...
This reverts commit 5567033b
2020-06-17 13:02:40 +03:00
Ilmir Usmanov
1cccceabb9
Revert "Fix merging two reference values"
...
This reverts commit 85e2392f
2020-06-17 13:02:40 +03:00