Unit tests in D
Don
nospam at nospam.com
Wed May 5 06:11:35 PDT 2010
bearophile wrote:
> Michel Fortin:
>
>> Am I right that what you want is this?
>> static assert(!__traits(compiles, foo(10)));
>
> I want a nice syntax that statically asserts if foo(10) doesn't statically asserts :-)
>
> What you have written is close (in D1 I have used the is() syntax for a similar purpose), but beside being syntactically ugly, it doesn't specifically detect static asserts inside foo.
It seems pretty useless to me. Wanting to make a distinction between
"this will not compile" and "this will not compile _because it hits a
static assert_" is an *extremely* niche feature. Because the only times
I can imagine that you'd care would be because you wanted to ensure it
gave a "nice" error message. And to do that, you'd have to actually
check the test of the static assert.
And the idea of creating a whole heirarchy of compile-time exceptions
for this ...
More information about the Digitalmars-d
mailing list