bug-guile
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#25791: address argument to atomic operation must be a pointer to _At


From: Andy Wingo
Subject: bug#25791: address argument to atomic operation must be a pointer to _Atomic type with 2.1.7 on macOS
Date: Wed, 01 Mar 2017 17:43:35 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1 (gnu/linux)

On Sun 19 Feb 2017 09:41, ilove zfs <address@hidden> writes:

> On macOS 10.11 and 10.12 building with Xcode 8, guile 2.1.7 fails to compile 
> with several errors saying "address argument to atomic operation must be a 
> pointer to _Atomic type." I
> can avoid this by setting ac_cv_header_stdatomic_h=no.
>
> Build logs here:
> https://gist.github.com/ilovezfs/b18b7e6160e0a4c5da297cc430961f63
> https://gist.github.com/57e1513e03ede26dc97c0f63eaad3a98
>
> Build failure is
> ```
>   CC       libguile_2.2_la-arrays.lo
>   CC       libguile_2.2_la-async.lo
> In file included from async.c:27:
> ../libguile/atomics-internal.h:37:10: error: address argument to atomic 
> operation must be a pointer to _Atomic type ('gl_uint32_t *' (aka 'unsigned 
> int *') invalid)
>   return atomic_fetch_sub (loc, arg);
>          ^                 ~~~
> /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../lib/clang/8.0.0/include/stdatomic.h:149:43:
>  note: expanded from macro 'atomic_fetch_sub'
> #define atomic_fetch_sub(object, operand) __c11_atomic_fetch_sub(object, 
> operand, __ATOMIC_SEQ_CST)
> ```
> and several similar errors.
>
> Previously (as of guile 2.1.4) I had been able to work around the issue 
> without setting ac_cv_header_stdatomic_h=no with this patch:
> https://raw.githubusercontent.com/ilovezfs/formula-patches/d2798a468346a7a28fbcd1c8aa3c1ccd5627b03f/guile/guile-atomic-type.patch
>
> However, the patch is no longer sufficient since now void** is one the types 
> needing _Atomic, which isn't allowed.

Any ideas here?  Sure would be nice to release a Guile with atomics that
compiles with clang.

Andy





reply via email to

[Prev in Thread] Current Thread [Next in Thread]