[Issue 24414] ImportC: undefined identifier `__builtin_clz`
d-bugmail at puremagic.com
d-bugmail at puremagic.com
Mon Feb 26 16:09:32 UTC 2024
https://issues.dlang.org/show_bug.cgi?id=24414
Alex Bryan <abryanbugzilla at proton.me> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |abryanbugzilla at proton.me
--- Comment #1 from Alex Bryan <abryanbugzilla at proton.me> ---
I've ran into this issue before and worked around it by putting this in a D
file:
module util;
// for C files built with import C that try to use GCC/clang builtin that
importC does not provide
extern(C) int __builtin_clz(int v)
{
return clz(v);
}
// count leading zeros.
int clz(uint v) pure nothrow @nogc @safe
in(v != 0)
{
import core.bitop : bsr;
return 31 - bsr(v);
}
and putting
__import util
at the top of the C file
--
More information about the Digitalmars-d-bugs
mailing list