actually, I'd rather:
```scala
// This possibly throws
def check(errors: Iterable[Throwable]): Unit
```
And then, your code becomes:
```scala
errors += e
check(errors)
None
```
And then the subclass can control the exception.