Why do the commented out calls to goo fail? Thanks Dan
------------------------------------- import std.stdio; struct S { } void goo(const ref S s) { writeln(s); } struct T { S s; void foo(const ref T other) const { goo(s); // Error: function fdsaf.goo (ref const(S) s) is // not callable using argument types (S) // goo(cast(S)s); // goo(cast()s); // same error writeln(typeid(S), " ", typeid(s), " ", typeid(cast()s), " ", typeid(cast(S)s)); } } void main() { T t; t.foo(t); const S s1; S s2; goo(s1); goo(s2); goo(cast(S) s2); // goo(cast(S) s1); Also fails }