August 13, 2017 Unresolved external symbol InterlockedIncrement | ||||
---|---|---|---|---|
| ||||
I am building a 64 bit windows app with latest DMD and I keep getting this linker error: error LNK2019: unresolved external symbol InterlockedIncrement referenced in function ThreadProc This function should be a part of kernel32.lib which I verified is found by using /VERBOSE:LIB linker arg. The only other clue I have is a bigger comment block above the InterlockedIncrement declaration in winbase.d which starts with: // These functions are problematic Does anyone know what is the problem here? |
August 13, 2017 Re: Unresolved external symbol InterlockedIncrement | ||||
---|---|---|---|---|
| ||||
Posted in reply to Igor | On Sunday, 13 August 2017 at 16:29:14 UTC, Igor wrote:
> I am building a 64 bit windows app with latest DMD and I keep getting this linker error:
>
> error LNK2019: unresolved external symbol InterlockedIncrement referenced in function ThreadProc
>
> This function should be a part of kernel32.lib which I verified is found by using /VERBOSE:LIB linker arg. The only other clue I have is a bigger comment block above the InterlockedIncrement declaration in winbase.d which starts with:
>
> // These functions are problematic
>
> Does anyone know what is the problem here?
As far as I managed to find this is actually a compiler intrinsic for C so it probably shouldn't have been defined in winbase.d at all...
I switched to using core.atomic.atomicOp which should be the same thing. Actually atomicFetchAdd would be the same thing but for some reason it is defined as private...
|
Copyright © 1999-2021 by the D Language Foundation