The following code fails with a parsing error on the 5th line, while it should be valid
if true {
mut b = 1;
if true {
b = 0;
}
b
} else {
15
}
Adding a semicolon at the end of the inner if fixes the parsing but isn't really what we want:
if true {
mut b = 1;
if true {
b = 0;
};
b
} else {
15
}