Hi William, I merged the fix to master: https://github.com/ivmai/bdwgc/commit/b725923951d77f5c6792c2797f89179267c58c9c
Regards, Ivan Tue, 14 Oct 2014 08:10:45 +0100 from William S Fulton <w...@fultondesigns.co.uk>: >Thanks for analysing and pointing in the right direction Mark. With this >info I found >https://github.com/ivmai/bdwgc/commit/8fc1f3b61b02320848b035ccccd59e04e77d3f6b#diff-b3f85dde7694cbd1268ea9ed20db1b1aR244 >which looks like it fixes it in the next release of bdwgc (7.5). > >Unfortunately this warning fails our tests as the build log is too big >(this warning leads to > 4GByte build logs as the header is used in >hundreds of our tests), so I'll suppress it some other way until 7.5 is >released. > >William > >On 14/10/14 04:53, Mark H Weaver wrote: >> [Forwarding this bug report to bd...@lists.opendylan.org] >> >> William S Fulton < w...@fultondesigns.co.uk > writes: >> >>> A simple >>> >>> #include <libguile.h> >>> >>> generates the numerous warnings given below: >>> >>> >>> In file included from example_wrap.c:702: >>> In file included from >>> /usr/local/Cellar/guile/2.0.11_1/include/guile/2.0/libguile.h:37: >>> In file included from >>> /usr/local/Cellar/guile/2.0.11_1/include/guile/2.0/libguile/async.h:28: >>> In file included from >>> /usr/local/Cellar/guile/2.0.11_1/include/guile/2.0/libguile/threads.h:36: >>> In file included from >>> /usr/local/Cellar/guile/2.0.11_1/include/guile/2.0/libguile/pthread-threads.h:33: >>> In file included from >>> /usr/local/Cellar/guile/2.0.11_1/include/guile/2.0/libguile/bdw-gc.h:47: >>> /usr/local/Cellar/bdw-gc/7.4.2/include/gc/gc.h:411:23: warning: unknown >>> attribute '__alloc_size__' ignored [-Wattributes] >>> GC_API GC_ATTR_MALLOC GC_ATTR_ALLOC_SIZE(1) void * GC_CALL >>> ^ >>> /usr/local/Cellar/bdw-gc/7.4.2/include/gc/gc_config_macros.h:249:54: note: >>> expanded from macro 'GC_ATTR_ALLOC_SIZE' >>> # define GC_ATTR_ALLOC_SIZE(argnum) __attribute__((__alloc_size__(argnum))) >>> ^ >> This is clearly an issue with bdwgc on clang, and possibly only on >> Apple's version of clang. Here's the relevant section of >> gc/gc_config_macros.h from bdwgc 7.4.2: >> >> --8<---------------cut here---------------start------------->8--- >> #ifndef GC_ATTR_ALLOC_SIZE >> /* 'alloc_size' attribute improves __builtin_object_size correctness. */ >> /* Only single-argument form of 'alloc_size' attribute is used. */ >> # if defined(__GNUC__) && (__GNUC__ > 4 \ >> || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3 && !defined(__ICC)) \ >> || __clang_major__ > 3 \ >> || (__clang_major__ == 3 && __clang_minor__ >= 2)) >> # define GC_ATTR_ALLOC_SIZE(argnum) __attribute__((__alloc_size__(argnum))) >> # else >> # define GC_ATTR_ALLOC_SIZE(argnum) >> # endif >> #endif >> --8<---------------cut here---------------end--------------->8--- >> >> You can see that the bdwgc developers have made an effort to check both >> GCC and clang version numbers before using the __alloc_size__ attribute. >> The code above seems to suggest that they believed clang 3.2 or later >> supported this attribute, whereas your version of clang seems to be >> based on upstream clang 3.5. Perhaps Apple removed support for this >> attribute from their clang? >> >> In any case, this needs to be taken up with the bdwgc developers. >> >> Regards, >> Mark >> >> >>> System information: >>> >>> $ guile --version | head -n 1 >>> guile (GNU Guile) 2.0.11 >>> >>> $ clang --version >>> Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn) >>> Target: x86_64-apple-darwin13.4.0 >>> Thread model: posix >>> >>> $ xcodebuild -version -sdk | head -n 2 >>> MacOSX10.9.sdk - OS X 10.9 (macosx10.9) >>> SDKVersion: 10.9 >>> >>> $ sw_vers >>> ProductName: Mac OS X >>> ProductVersion: 10.9.5 >>> BuildVersion: 13F34 >>> >>> $ uname -a >>> Darwin itako16071.miso 13.4.0 Darwin Kernel Version 13.4.0: Sun Aug 17 >>> 19:50:11 PDT 2014; root:xnu-2422.115.4~1/RELEASE_X86_64 x86_64 >_______________________________________________ >bdwgc mailing list >bd...@lists.opendylan.org >https://lists.opendylan.org/mailman/listinfo/bdwgc