I suggest to add the "pure" annotation to the function std.exception.bailOut(), so enforce() too gets inferred as pure.
https://github.com/D-Programming-Language/phobos/pull/263 I have already posted a pull request #263 to make enforce family @safe and pure.
We'll eventually have a pure map/filter in D.