Andrei Alexandrescu: > pragma(msg, "Is this what you need?"); You are right, in some situations it works :-)
But you have to guard the pragma(msg) with a static if, so if your template constraint is a CTFE (that uses a normal 'if' instead of a 'static if') you can't use it, while ctputs() is OK, this shows the error message: bool isGoodFoo(int x) { if (x > 10) { return true; } else { pragma(msg, "no good"); // ctputs("no good"); return false; } } void foo(int N)() if (isGoodFoo(N)) {} void main() { foo!(20)(); } Bye, bearophile