-betterC and extern(C++) classes

9il via Digitalmars-d digitalmars-d at puremagic.com
Sun Sep 10 02:03:38 PDT 2017


On Sunday, 10 September 2017 at 08:56:11 UTC, rikki cattermole 
wrote:
> On 10/09/2017 9:40 AM, Yuxuan Shui wrote:
>> I was experimenting with -betterC and found out that C++ 
>> classes doesn't work. Because the resulting object file needs 
>> a symbol "_D14TypeInfo_Class6__vtblZ" which is in druntime. I 
>> suppose this is to support T.classinfo?
>
> Nope.
>
>> Could we remove T.classinfo and make classes work under 
>> -betterC? Or is there some other reason preventing this from 
>> happening?
>> 
>> Thanks.
>
> Definitely not.
>
> Classes require vtable's to work. Vtables are generated as part 
> of TypeInfo. No TypeInfo, no classes, simple to understand.
>

No. vtables can be generated without RTTI and we can have both D 
and C++ classes in betterC mode. It may not be ready now, but it 
is definitely possible and should be supported.

Best reagards,
Ilya


More information about the Digitalmars-d mailing list