www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 380] New: cannot use typeof(*this) in a static context

reply d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=380

           Summary: cannot use typeof(*this) in a static context
           Product: D
           Version: 0.167
          Platform: PC
        OS/Version: Windows
            Status: NEW
          Severity: minor
          Priority: P3
         Component: DMD
        AssignedTo: bugzilla digitalmars.com
        ReportedBy: h3r3tic mat.uni.torun.pl


struct Foo {
        alias typeof(*this) ThisType;
}


 'this' is only allowed in non-static member functions
 can only * a pointer, not a 'int'
workaround: struct Foo { alias typeof(*typeof(this).init) ThisType; static assert (is(Foo == ThisType)); } --
Sep 27 2006
next sibling parent Thomas Kuehne <thomas-dloop kuehne.cn> writes:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

d-bugmail puremagic.com schrieb am 2006-09-27:
 http://d.puremagic.com/issues/show_bug.cgi?id=380
 struct Foo {
         alias typeof(*this) ThisType;
 }


 'this' is only allowed in non-static member functions
 can only * a pointer, not a 'int'
workaround: struct Foo { alias typeof(*typeof(this).init) ThisType; static assert (is(Foo == ThisType)); }
Added to DStress as http://dstress.kuehne.cn/compile/t/typeof_10_A.d http://dstress.kuehne.cn/compile/t/typeof_10_B.d http://dstress.kuehne.cn/compile/t/typeof_10_C.d http://dstress.kuehne.cn/compile/t/typeof_10_D.d Thomas -----BEGIN PGP SIGNATURE----- iD8DBQFFHDPELK5blCcjpWoRAqm+AJ4jqtlQEQkV9fgRzRJXIiHDmaPcewCdHewk 7VoXDtrrI5FWYnS+LQgrKZ8= =rMNb -----END PGP SIGNATURE-----
Sep 29 2006
prev sibling parent d-bugmail puremagic.com writes:
http://d.puremagic.com/issues/show_bug.cgi?id=380


bugzilla digitalmars.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|                            |FIXED





Fixed DMD 0.175


-- 
Nov 25 2006