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

}

bb1: {

}

bb2: {

}

bb3: {
	statement
}

bb4: {
	condition
}

bb5: {
	statement
	break
}

bb6: {
	unreachable
}

bb7: {
	condition
}

bb8: {
	statement
}

bb9: {
	condition
}

bb10: {
	statement
	break
}

bb11: {
	unreachable
}

bb12: {
	condition
}

bb13: {
	statement
	statement
	statement
	statement
	return <value>
}

bb14: {
	unreachable
}

bb15: {
	condition
}

bb16: {
	statement
	statement
	statement
}

bb17: {

}

bb18: {
	statement
	return <value>
}

bb19: {
	unreachable
}

bb20: {
	statement
	return <value>
}

bb21: {
	unreachable
}

bb22: {

}

digraph {
    0 [ label = "" ]
    1 [ label = "" ]
    2 [ label = "" ]
    3 [ label = "SwitchStatement" ]
    4 [ label = "Condition(1)" ]
    5 [ label = "ExpressionStatement\nbreak" ]
    6 [ label = "unreachable" ]
    7 [ label = "Condition(2)" ]
    8 [ label = "ExpressionStatement" ]
    9 [ label = "Condition(3)" ]
    10 [ label = "ExpressionStatement\nbreak" ]
    11 [ label = "unreachable" ]
    12 [ label = "Condition(4)" ]
    13 [ label = "BlockStatement\nExpressionStatement\nVariableDeclaration\nExpressionStatement\nreturn <value>" ]
    14 [ label = "unreachable" ]
    15 [ label = "Condition(5)" ]
    16 [ label = "ExpressionStatement\nExpressionStatement\nExpressionStatement" ]
    17 [ label = "" ]
    18 [ label = "ExpressionStatement\nreturn <value>" ]
    19 [ label = "unreachable" ]
    20 [ label = "ExpressionStatement\nreturn <value>" ]
    21 [ label = "unreachable" ]
    22 [ 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)" ]
    4 -> 5 [ label = "Jump" ]
    6 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    5 -> 6 [ label = "Unreachable" , style = "dotted" ]
    7 -> 2 [ label = "Error(Implicit)" ]
    8 -> 2 [ label = "Error(Implicit)" ]
    7 -> 8 [ label = "Jump" ]
    9 -> 2 [ label = "Error(Implicit)" ]
    10 -> 2 [ label = "Error(Implicit)" ]
    9 -> 10 [ label = "Jump" ]
    11 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    10 -> 11 [ label = "Unreachable" , style = "dotted" ]
    12 -> 2 [ label = "Error(Implicit)" ]
    13 -> 2 [ label = "Error(Implicit)" ]
    12 -> 13 [ label = "Jump" ]
    14 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    13 -> 14 [ label = "Unreachable" , style = "dotted" ]
    15 -> 2 [ label = "Error(Implicit)" ]
    16 -> 2 [ label = "Error(Implicit)" ]
    15 -> 16 [ label = "Jump" ]
    17 -> 2 [ label = "Error(Implicit)" ]
    18 -> 2 [ label = "Error(Implicit)" ]
    17 -> 18 [ label = "Jump" ]
    19 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    18 -> 19 [ label = "Unreachable" , style = "dotted" ]
    4 -> 7 [ label = "Normal" ]
    4 -> 9 [ label = "Normal" ]
    4 -> 12 [ label = "Normal" ]
    4 -> 15 [ label = "Normal" ]
    4 -> 17 [ label = "Normal" ]
    6 -> 7 [ label = "Normal" , style = "dotted" ]
    3 -> 4 [ label = "Normal" ]
    7 -> 9 [ label = "Normal" ]
    7 -> 12 [ label = "Normal" ]
    7 -> 15 [ label = "Normal" ]
    7 -> 17 [ label = "Normal" ]
    8 -> 9 [ label = "Normal" ]
    3 -> 7 [ label = "Normal" ]
    9 -> 12 [ label = "Normal" ]
    9 -> 15 [ label = "Normal" ]
    9 -> 17 [ label = "Normal" ]
    11 -> 12 [ label = "Normal" , style = "dotted" ]
    3 -> 9 [ label = "Normal" ]
    12 -> 15 [ label = "Normal" ]
    12 -> 17 [ label = "Normal" ]
    14 -> 15 [ label = "Normal" , style = "dotted" ]
    3 -> 12 [ label = "Normal" ]
    15 -> 17 [ label = "Normal" ]
    16 -> 17 [ label = "Normal" ]
    3 -> 15 [ label = "Normal" ]
    3 -> 17 [ label = "Normal" ]
    20 -> 2 [ label = "Error(Implicit)" ]
    19 -> 20 [ label = "Normal" , style = "dotted" ]
    5 -> 20 [ label = "Jump" ]
    10 -> 20 [ label = "Jump" ]
    21 -> 2 [ label = "Error(Implicit)" , style = "dotted" ]
    20 -> 21 [ label = "Unreachable" , style = "dotted" ]
    22 -> 0 [ label = "Error(Implicit)" ]
    1 -> 22 [ label = "Normal" ]
}
