On Friday, 15 April 2016 at 18:22:02 UTC, Eric wrote:
On Friday, 15 April 2016 at 17:43:59 UTC, ag0aep6g wrote:
On 15.04.2016 19:13, Eric wrote:
   1 alias J = const C;
   2
   3 void main(string[] args)
   4 {
   5     J a = new C();
   6     I!(J) i = a;
   7 }
   8
   9 interface I(V) { }
  10
  11 class F(V) if (is(V : I!(V))) { }
  12
  13 class C : I!(J)
  14 {
  15     F!(J) m;
  16 }


Line 6 isn't accepted either. If you remove the constraint, the compiler complains about it. So it's just the next error in line.

And really const C can't be converted to I!(const C) implicitly. The former is const, the latter is mutable => no go.


Thanks. I see that now. Is there any way I can make the compiler
understand that the interface is const?

-Eric

line 6 can be fixed like this: "const I!(J) i = a;"
Now if I can just figure out how to fix line 15...


Reply via email to