Attributes not propagating to objects via typeinfo?
rsw0x via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Wed Aug 12 20:46:17 PDT 2015
Sample code:
class C{}
struct S{}
void main(){
import std.stdio;
auto c = new shared C();
auto s = new shared S();
writeln(typeid(c)); //modulename.C
writeln(typeid(s)); //shared(modulename.S)*
writeln(typeid(c).next); //null
writeln(typeid(s).next); //shared(modulename.S)
writeln(typeid(typeid(s).next) is typeid(TypeInfo_Shared));
//true
writeln(typeid(typeid(c)) is typeid(TypeInfo_Shared)); //false
}
What's the reason that the shared propagates to the typeinfo for
the struct, but not for the class declaration?
More information about the Digitalmars-d-learn
mailing list