Is this a bug?
Eric via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Fri Apr 15 11:22:02 PDT 2016
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
More information about the Digitalmars-d-learn
mailing list