Bug 11624 – __trait(compiles) does not detect unimplemented interface

Status
RESOLVED
Resolution
WORKSFORME
Severity
normal
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-11-27T15:07:34Z
Last change time
2020-07-04T19:22:11Z
Keywords
accepts-invalid, pull
Assigned to
No Owner
Creator
Luís Marques

Comments

Comment #0 by luis — 2013-11-27T15:07:34Z
This does not compile, of course: interface I { void foo(); } static class C : I { } Yet this static assert succeeds: interface I { void foo(); } static assert(__traits(compiles, { static class C : I { } }));
Comment #1 by dlang-bot — 2020-07-04T17:49:48Z
@NilsLankila created dlang/dmd pull request #11372 "fix issue 11624 - __trait(compiles) does not detect unimplemented int…" fixing this issue: - fix issue 11624 - __trait(compiles) does not detect unimplemented interface this is just a regression test as the fix was recently brought by #11191 https://github.com/dlang/dmd/pull/11372
Comment #2 by moonlightsentinel — 2020-07-04T18:59:27Z
Apparently fixed as a side effect of https://github.com/dlang/dmd/pull/11191
Comment #3 by dlang-bot — 2020-07-04T19:22:11Z
dlang/dmd pull request #11372 "fix issue 11624 - __trait(compiles) does not detect unimplemented int…" was merged into master: - 400909b6015f987e5b66ac3082095add29fcf893 by Nils Lankila: Add test for issue 11624 - __trait(compiles) does not detect unimplemented interface this is just a regression test as the fix was recently brought by #11191. Mr dbot close issue 11624. https://github.com/dlang/dmd/pull/11372