d_eh_personality required when building an OS with betterC/amd64

Streaksu assemblyislaw at gmail.com
Mon Jun 1 04:28:32 UTC 2020


On Sunday, 31 May 2020 at 14:18:17 UTC, kinke wrote:
> Please post some corresponding code. AFAIK, there's no 
> exception support at all with -betterC, so the personality 
> function shouldn't be referenced. [The correct signature would 
> be 
> https://github.com/ldc-developers/druntime/blob/9cfc7fa48cf868f91af9290764eccb5db4b2877c/src/rt/dwarfeh.d#L506-L508.]

The easiest way I found of triggering the error is adding this 
destructor to this struct https://pastebin.com/6rypx3yA , the 
templates used have no effect on the error as they are used on 
other struct destructors and they dont trigger this error, its 
just in this namely case, their definitions anyways are available 
at 
https://github.com/Takao-OS/Takao/blob/master/source/lib/alloc.d.

Lately I discovered this dependency is also generated in other 
points of my codebase, namely in 
https://github.com/Takao-OS/Takao/blob/master/source/system/apic.d, which makes use of core.volatile (it might have something to do in that case I think).

Those 2 instances, that class and the later apic.d are the only 
examples I could find of this function being generated.


More information about the digitalmars-d-ldc mailing list