On Thu, Sep 12, 2013 at 09:12:18PM +0200, bearophile wrote: > H. S. Teoh: > > >In phobos git HEAD, std.format has been made pure @safe nothrow (and > >CTFE-able), so you should be able to write your assert as: > > > > assert(condition, format("x = %s, blahblah", x)); > > With the latest DMD from updated GIT head: > > > import std.string: format; > void main() pure nothrow { > string x = "hello"; > bool condition = true; > assert(condition, format("x = %s, blahblah", x)); > } > > > It gives: > > test.d(5): Error: 'std.string.format!(char, string).format' is not nothrow > test.d(2): Error: function 'D main' is nothrow yet may throw [...]
Oops. Apparently I wrote nothrow but forgot to test it. I did test pure and @safe, though, so at least those two should work. T -- Food and laptops don't mix.