Compiling current HEAD (as of 2013-04-18 13:20) fails with following error: CXX -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector --param=ssp-buffer-size=4 lib/parse-time-vrp.o In file included from lib/parse-time-vrp.cc:23: In file included from ./lib/database-private.h:33: ./lib/notmuch-private.h:478:8: error: visibility does not match previous declaration struct visible _notmuch_string_list { ^ ./lib/notmuch-private.h:67:33: note: expanded from macro 'visible' # define visible __attribute__((visibility("default"))) ^ ./lib/notmuch-private.h:52:13: note: previous attribute is here #pragma GCC visibility push(hidden) ^ In file included from lib/database.cc:21: In file included from ./lib/database-private.h:33: ./lib/notmuch-private.h:478:8: error: visibility does not match previous declaration struct visible _notmuch_string_list { ^ ./lib/notmuch-private.h:67:33: note: expanded from macro 'visible' # define visible __attribute__((visibility("default"))) ^ ./lib/notmuch-private.h:52:13: note: previous attribute is here #pragma GCC visibility push(hidden) ^ 1 error generated. make: *** [lib/parse-time-vrp.o] Error 1 make: *** Waiting for unfinished jobs.... 1 error generated. make: *** [lib/database.o] Error 1 Of course `#pragma GCC` has to mean something and might be a reason why compiling with `CXX=clang++` fails.