libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../include -std=c++11 -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -fvisibility=hidden -DCI_BUILD_MODULE -D_REENTRANT -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Wall -D_FILE_OFFSET_BITS=64 -I/usr/include -I/usr/include/c_icap -O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -c redis.cc -fPIC -DPIC -o .libs/redis_la-redis.o
make[2]: Leaving directory '/builddir/build/BUILD/c-icap-modules-fd1a1b7757e28ac547954f2eb63f4815fa241bd3/modules'
In file included from /usr/include/c_icap/stats.h:24,
from redis.cc:9:
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_add_u32_gl(uint32_t*, uint32_t)':
/usr/include/c_icap/atomic.h:353:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
353 | return ci_atomic_fetch_add_ ## name ## _non_inline_gl(counter, add); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:432:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
432 | __ci_implement_atomic_ops_non_inline(static inline, u32, uint32_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_sub_u32_gl(uint32_t*, uint32_t)':
/usr/include/c_icap/atomic.h:356:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
356 | return ci_atomic_fetch_sub_ ## name ## _non_inline_gl(counter, sub); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:432:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
432 | __ci_implement_atomic_ops_non_inline(static inline, u32, uint32_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_add_i32_gl(int32_t*, int32_t)':
/usr/include/c_icap/atomic.h:353:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
353 | return ci_atomic_fetch_add_ ## name ## _non_inline_gl(counter, add); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:433:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
433 | __ci_implement_atomic_ops_non_inline(static inline, i32, int32_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_sub_i32_gl(int32_t*, int32_t)':
/usr/include/c_icap/atomic.h:356:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
356 | return ci_atomic_fetch_sub_ ## name ## _non_inline_gl(counter, sub); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:433:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
433 | __ci_implement_atomic_ops_non_inline(static inline, i32, int32_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_add_u64_gl(uint64_t*, uint64_t)':
/usr/include/c_icap/atomic.h:353:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
353 | return ci_atomic_fetch_add_ ## name ## _non_inline_gl(counter, add); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:434:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
434 | __ci_implement_atomic_ops_non_inline(static inline, u64, uint64_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_sub_u64_gl(uint64_t*, uint64_t)':
/usr/include/c_icap/atomic.h:356:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
356 | return ci_atomic_fetch_sub_ ## name ## _non_inline_gl(counter, sub); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:434:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
434 | __ci_implement_atomic_ops_non_inline(static inline, u64, uint64_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_add_i64_gl(int64_t*, int64_t)':
/usr/include/c_icap/atomic.h:353:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
353 | return ci_atomic_fetch_add_ ## name ## _non_inline_gl(counter, add); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:435:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
435 | __ci_implement_atomic_ops_non_inline(static inline, i64, int64_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h: In function 'void ci_atomic_fetch_sub_i64_gl(int64_t*, int64_t)':
/usr/include/c_icap/atomic.h:356:62: error: return-statement with a value, in function returning 'void' [-fpermissive]
356 | return ci_atomic_fetch_sub_ ## name ## _non_inline_gl(counter, sub); \
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
/usr/include/c_icap/atomic.h:435:1: note: in expansion of macro '__ci_implement_atomic_ops_non_inline'
435 | __ci_implement_atomic_ops_non_inline(static inline, i64, int64_t);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[2]: *** [Makefile:635: redis_la-redis.lo] Error 1
make[1]: *** [Makefile:425: all-recursive] Error 1
make: *** [Makefile:357: all] Error 2
When enabling support for hiredis, I get these errors:
Btw, any documentation on how this feature should be used?