On Wednesday, 6 January 2016 at 14:17:51 UTC, anonymous wrote: > try return !haystack.empty && pred(haystack.front); Might want to use std.exception.assumeWontThrow instead return assumeWontThrow(!haystack.empty && pred(haystack.front)); http://dlang.org/phobos/std_exception.html#.assumeWontThrow