Fix nondeterminism with greed and allow an empty statement, ";", which
can separate blocks you don't want to run together.