Jim Meyering wrote: > I produced the preprocessed output using this trick: > > make -C gnulib-tests AM_CXXFLAGS='-dD -E' test-fcntl-h-c++.o
You teach me about the -dD option. Nice! > #define _GL_FCNTL_H > # 59 "../lib/fcntl.h" 3 > #define GL_LINK_WARNING(message) GL_LINK_WARNING1 (__FILE__, __LINE__, > message) > > #define GL_LINK_WARNING1(file,line,message) GL_LINK_WARNING2 (file, line, > message) > > #define GL_LINK_WARNING2(file,line,message) GL_LINK_WARNING3 (file ":" #line > ": warning: " message) > > #define GL_LINK_WARNING3(message) ({ static const char warning[sizeof > (message)] __attribute__ ((__unused__, __section__ (".gnu.warning"), > __aligned__ (1))) = message "\n"; (void)0; }) Your copy of gnulib-tests/fcntl.h is more than two months old. It contains traces of GL_LINK_WARNING, which we are not using any more since 2010-01-20. At the same time, you are using a test-fcntl-h-c++.cc from a couple of days ago. I would recommend to do 1. "make distclean" 2. verify that gnulib-tests/fcntl.h is gone 3. "./configure" Did you by bad chance run './bootstrap' without a prior "make distclean"? Or were the timestamps disturbed by git? Bruno