It may not return the correct error. If first call fails and update toReport, it will still continue and overwrite from other errors. At the end, you may not report the correct error.