blob: e7fe2d4d12540dfa1b8e18cd6088c1d4a1c97008 [file] [log] [blame]
// https://issues.dlang.org/show_bug.cgi?id=21850
struct Strukt2 {
this(int* _block) { }
}
struct Strukt {
int* block;
Strukt2 foo() { return Strukt2(null); }
alias foo this;
}
bool wrapper(T)(ref T a, ref T b)
{
return doesPointTo(a, b);
}
void johan() pure {
Strukt a;
Strukt b;
assert(wrapper(a, b)); // error wrapper is not pure
assert(doesPointTo(a, b)); // fine
}
bool doesPointTo(S, T)(S , T) {
return false;
}
bool doesPointTo(S)(shared S) {
return false;
}
bool mayPointTo(){
return false;
}