---
source: crates/oxc_semantic/tests/integration/cfg.rs
expression: snapshot
input_file: crates/oxc_semantic/tests/integration/cfg_fixtures/if_stmt_in_for_in.js
---
bb0: {

}

bb1: {

}

bb2: {

}

bb3: {
	statement
	statement
}

bb4: {

}

bb5: {
	iteration <in>
}

bb6: {
	statement
	statement
}

bb7: {
	condition
}

bb8: {
	statement
	statement
	break
}

bb9: {
	unreachable
}

bb10: {
	statement
}

bb11: {
	condition
}

bb12: {
	statement
	statement
	continue
}

bb13: {
	unreachable
}

bb14: {

}

bb15: {
	statement
	statement
}

bb16: {
	statement
}

bb17: {

}

digraph {
    0 [ label = "" ]
    1 [ label = "" ]
    2 [ label = "" ]
    3 [ label = "ForInStatement\nVariableDeclaration" ]
    4 [ label = "" ]
    5 [ label = "Iteration(IdentifierReference(array) in expr)" ]
    6 [ label = "BlockStatement\nIfStatement" ]
    7 [ label = "Condition(if cond)" ]
    8 [ label = "BlockStatement\nExpressionStatement\nbreak" ]
    9 [ label = "unreachable" ]
    10 [ label = "IfStatement" ]
    11 [ label = "Condition(else cond)" ]
    12 [ label = "BlockStatement\nExpressionStatement\ncontinue" ]
    13 [ label = "unreachable" ]
    14 [ label = "" ]
    15 [ label = "ExpressionStatement\nExpressionStatement" ]
    16 [ label = "ExpressionStatement" ]
    17 [ label = "" ]
    1 -> 0 [ label = "Error(Implicit)" ]
    3 -> 2 [ label = "Error(Implicit)" ]
    1 -> 3 [ label = "NewFunction" ]
    4 -> 2 [ label = "Error(Implicit)" ]
    5 -> 2 [ label = "Error(Implicit)" ]
    6 -> 2 [ label = "Error(Implicit)" ]
    7 -> 2 [ label = "Error(Implicit)" ]
    8 -> 2 [ label = "Error(Implicit)" ]
    9 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    8 -> 9 [ label = "Unreachable" , style = "dotted" ]
    10 -> 2 [ label = "Error(Implicit)" ]
    11 -> 2 [ label = "Error(Implicit)" ]
    12 -> 2 [ label = "Error(Implicit)" ]
    13 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    12 -> 13 [ label = "Unreachable" , style = "dotted" ]
    14 -> 2 [ label = "Error(Implicit)" ]
    10 -> 11 [ label = "Normal" ]
    13 -> 14 [ label = "Normal" , style = "dotted" ]
    11 -> 12 [ label = "Jump" ]
    10 -> 14 [ label = "Normal" ]
    15 -> 2 [ label = "Error(Implicit)" ]
    6 -> 7 [ label = "Normal" ]
    9 -> 15 [ label = "Normal" , style = "dotted" ]
    7 -> 8 [ label = "Jump" ]
    6 -> 10 [ label = "Normal" ]
    14 -> 15 [ label = "Normal" ]
    16 -> 2 [ label = "Error(Implicit)" ]
    3 -> 4 [ label = "Normal" ]
    4 -> 5 [ label = "Normal" ]
    5 -> 6 [ label = "Jump" ]
    15 -> 5 [ label = "Backedge" ]
    5 -> 16 [ label = "Normal" ]
    8 -> 16 [ label = "Jump" ]
    12 -> 5 [ label = "Jump" ]
    17 -> 0 [ label = "Error(Implicit)" ]
    1 -> 17 [ label = "Normal" ]
}
