in reply to Re: Parse::RecDescent grammar that winds its way all the way back to start
in thread Parse::RecDescent grammar that winds its way all the way back to start

Well, the first thing that I did, as you can see, is to shrink the size of the grammar-example in the original post to “just an example.”

You still not clear what you want out of it.

If you simply don't want it to fail, use a production that always matches instead of using <error>.

Then, I came up with a production like this:

job_list : job_statement job_list | #NOTHING

will match the same as

job_list : job_statement(s?)