Error on an empty paren expression
fix a possible leak
fix a goto to a wrong error-cleanup part
fix: on error it was possible that leaveblock() is called after the function's already been deleted