[Issue 23402] importc function definitions from includes can cause D name conflicts

d-bugmail at puremagic.com d-bugmail at puremagic.com
Thu Jan 12 14:33:03 UTC 2023


https://issues.dlang.org/show_bug.cgi?id=23402

--- Comment #3 from Lance Bachmeier <lance at lancebachmeier.com> ---
(In reply to Walter Bright from comment #2)
> Can you boil it down to a compilable example, please?

This new bug covers mine (not Adam's). It might be specific to including
math.h.

https://issues.dlang.org/show_bug.cgi?id=23622

A complete test case:

foo.c:

#include <math.h>

int main() {}

gcc foo.c -> compiles

dmd foo.c -> 

#defines(797): Error: variable `foo.FP_NAN` conflicts with enum member
`__anonymous.FP_NAN` at /usr/include/math.h(855)
#defines(798): Error: variable `foo.FP_INFINITE` conflicts with enum member
`__anonymous.FP_INFINITE` at /usr/include/math.h(858)
#defines(799): Error: variable `foo.FP_ZERO` conflicts with enum member
`__anonymous.FP_ZERO` at /usr/include/math.h(861)
#defines(800): Error: variable `foo.FP_SUBNORMAL` conflicts with enum member
`__anonymous.FP_SUBNORMAL` at /usr/include/math.h(864)
#defines(801): Error: variable `foo.FP_NORMAL` conflicts with enum member
`__anonymous.FP_NORMAL` at /usr/include/math.h(867)

--


More information about the Digitalmars-d-bugs mailing list