Ah, yeah, the new heurestics is basically about detecting the next file-level item in error recovery and putting parser into file-level too. It is not able to solve what happens inside body.
I have noticed the initializer list problem before too (just before implementing heurestics), I guess it is worth fixing (and easy to fix too in fact...).