Description of problem: Under certain conditions compilation fails because of conflicting include files. This has arisen some time between fc4 and fc8. Version-Release number of selected component (if applicable): glibc-2.7-2 How reproducible: Always Steps to Reproduce: 1. Compile the following C program: =========x.c======== #include <string.h> ==================== with normal rpm compile flags (/usr/lib/rpm/redhat/macros:%__global_cflags which contain (amongst other things) "-O2 -D_FORTIFY_SOURCE=2". That is: gcc -O2 -D_FORTIFY_SOURCE=2 -c x.c 2. Now repeat about with the following: gcc -O2 -D_FORTIFY_SOURCE=2 -D__USE_STRING_INLINES -c x.c Actual results: 1. Normal compile 2. Error In file included from /usr/include/string.h:429, from x.c:3: /usr/include/bits/string3.h:58: error: redefinition of 'memmove' Expected results: Should compile without conflicting inlined memmove definitions. Additional info: Run gcc with -E flag and observe that multiple inlined memmove() definitions are generated. One from /usr/include/bits/string.h and the other from /usr/include/bits/string3.h
Should be fixed in glibc-2.7.90-1 and above in rawhide.