[FIR] Create tickets for some of the TODOs
This commit is contained in:
committed by
Space Team
parent
ef9413108b
commit
24b1fb2ccf
+1
-1
@@ -156,7 +156,7 @@ object FirCallsEffectAnalyzer : FirControlFlowChecker() {
|
|||||||
override fun visitNode(node: CFGNode<*>, data: IllegalScopeContext) {}
|
override fun visitNode(node: CFGNode<*>, data: IllegalScopeContext) {}
|
||||||
|
|
||||||
override fun visitFunctionEnterNode(node: FunctionEnterNode, data: IllegalScopeContext) {
|
override fun visitFunctionEnterNode(node: FunctionEnterNode, data: IllegalScopeContext) {
|
||||||
// TODO: this is not how CFG works, this should be done by FIR tree traversal. Especially considering that
|
// TODO, KT-59668: this is not how CFG works, this should be done by FIR tree traversal. Especially considering that
|
||||||
// none of these methods use anything from the CFG other than `node.fir`, which should've been a hint.
|
// none of these methods use anything from the CFG other than `node.fir`, which should've been a hint.
|
||||||
data.enterScope(node.fir === rootFunction || node.fir.isInPlaceLambda())
|
data.enterScope(node.fir === rootFunction || node.fir.isInPlaceLambda())
|
||||||
}
|
}
|
||||||
|
|||||||
+1
-1
@@ -96,7 +96,7 @@ private fun PropertyInitializationInfoData.checkPropertyAccesses(
|
|||||||
|
|
||||||
for (node in graph.nodes) {
|
for (node in graph.nodes) {
|
||||||
when {
|
when {
|
||||||
// TODO: `node.isUnion` - f({ x = 1 }, { x = 2 }) - which to report?
|
// TODO, KT-59669: `node.isUnion` - f({ x = 1 }, { x = 2 }) - which to report?
|
||||||
// Also this is currently indistinguishable from x = 1; f({}, {}).
|
// Also this is currently indistinguishable from x = 1; f({}, {}).
|
||||||
|
|
||||||
node is VariableDeclarationNode -> {
|
node is VariableDeclarationNode -> {
|
||||||
|
|||||||
+1
-1
@@ -35,7 +35,7 @@ private fun <I : ControlFlowInfo<I, *, *>> ControlFlowGraph.collectDataForNodeIn
|
|||||||
changed = changed or (visitor.visitSubGraph(node, it) && it.collectDataForNodeInternal(direction, visitor, nodeMap))
|
changed = changed or (visitor.visitSubGraph(node, it) && it.collectDataForNodeInternal(direction, visitor, nodeMap))
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// TODO: if data for previousNodes hasn't changed, then should be no need to recompute data for this one
|
// TODO, KT-59670: if data for previousNodes hasn't changed, then should be no need to recompute data for this one
|
||||||
val union = node.isUnion
|
val union = node.isUnion
|
||||||
val previousData = when (direction) {
|
val previousData = when (direction) {
|
||||||
TraverseDirection.Forward -> node.previousCfgNodes
|
TraverseDirection.Forward -> node.previousCfgNodes
|
||||||
|
|||||||
Reference in New Issue
Block a user