Bug 11499 – is-expression misbehaving with 'alias this'

Status
RESOLVED
Resolution
FIXED
Severity
major
Priority
P2
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2013-11-11T13:51:54Z
Last change time
2018-11-06T17:54:42Z
Assigned to
No Owner
Creator
Tommi
See also
https://issues.dlang.org/show_bug.cgi?id=9274

Comments

Comment #0 by tommitissari — 2013-11-11T13:51:54Z
This affects at least std.traits.isInstanceOf. struct A(T) {} struct B { A!int _a; alias _a this; } void main() { static assert(!is(B == A!int)); // OK static assert(!is(B == A!X, X)); // assertion fails }
Comment #1 by sascha.orlov — 2018-02-20T11:22:53Z
*** Issue 13692 has been marked as a duplicate of this issue. ***
Comment #2 by razvan.nitu1305 — 2018-10-17T14:31:23Z
Comment #3 by github-bugzilla — 2018-11-06T17:54:41Z
Commits pushed to master at https://github.com/dlang/dmd https://github.com/dlang/dmd/commit/c4fa519661dcb584b23a4573c0e549925b5339db Fix Issue 9274 and 11499 - is + alias this = wrong code https://github.com/dlang/dmd/commit/80ce8b1ead69489e17d6ddaa8bb7b92d5890a6d9 Merge pull request #8839 from RazvanN7/Issue_9274 Fix Issue 9274 and 11499 - is + alias this = wrong code