understood, but that's responsibility of tester to make sure they're
not too flaky (eg using msg.canFind("FOO") (or, if regex weren't slow,
regex)On Wed, Feb 7, 2018 at 1:13 PM, Nicholas Wilson via Digitalmars-d <[email protected]> wrote: > On Wednesday, 7 February 2018 at 20:29:44 UTC, Timothee Cour wrote: >> >> is there any way to get error from speculative execution (`__traits( >> compiles, ...)`)? would be useful in tests; If not currently how hard >> would that be to implement? eg: >> >> ``` >> >> struct Status{bool ok; string msg;} >> >> Status status = __traits(compilesReportError, {string b=10;}) >> assert(!status.ok); >> assert(status.msg==`main.d(15) Error: cannot implicitly convert >> expression 10 of type int to string`); >> ``` > > > Probably not very hard. Would make for some nice diagnostics,but very flakey > tests. Compiler errors are frequently changed.
