2nd round in improving error handling (only errors coming from a real parsing generate an exception, not if the user puts it into his/her output deliberately)