The alternative is:
```
throw new OutOfMemoryError("malloc failure");
```
The trouble is the call to `new`. The point of ScopeBuffer is to not use the GC, and to mark it so with @nogc in the next version, but with the `new` it will be using the GC. Essentially, we need to redesign dealing with out of memory errors, but that is beyond the scope of ScopeBuffer at the moment.