> In debug builds gets rewritten as: > > int max(in int x, in int y) { > if (x <= y) > throw new AssertError("..."); > return x; > } Sorry, I meant: In debug builds gets rewritten as: int max(in int x, in int y) { if (x <= y) throw new AssertError("..."); return (x > y) ? x : y; } Bye, bearophile