Intended to be able to RefCount an interface?

weaselcat via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Mon Feb 9 22:26:37 PST 2015


On Tuesday, 10 February 2015 at 05:09:00 UTC, Jakob Ovrum wrote:
> On Tuesday, 10 February 2015 at 04:44:55 UTC, weaselcat wrote:
>> Thread title.
>>
>>
>> interface Itest{
>>
>> }
>>
>> class testclass : Itest{
>> }
>>
>> void main()
>> {
>>    import std.typecons;
>>    auto test = RefCounted!Itest(new testclass());
>> }
>>
>> If you change the refcounted to type testclass it doesn't 
>> compile because refcounted doesn't support classes.
>>
>> Is this a bug, or intended?
>
> I think this is a bug, and that the current RefCounted needs to 
> reject interfaces.

I assumed as much, thanks.

> AFAIK, it is intended that RefCounted!SomeClass is supposed to 
> reference-count the actual class instance, not its reference, 
> which is what RefCounted!SomeInterface currently does.

Is there currently an enhancement request open for this on the 
bug tracker? I cannot find anything.


More information about the Digitalmars-d-learn mailing list