Hi! I delayed this for a few days because there's been a bit of a flurry of new activity to report. Also, there's a new PATCHES file suggesting Signed-off-by and other contribution hints.
Module of the Month: cppmagic (BSD-MIT) ======================================= This header-only module provides various special effects, such as iterators in C macros like CPPMAGIC_MAP() and CPPMAGIC_JOIN(). I'll leave you to read the source, but David provided me this example which counts the number of arguments to a macro: #define ONE(x) 1 #define ARGCNT(...) CPPMAGIC_JOIN(+, CPPMAGIC_MAP(ONE, __VA_ARGS__)) New modules: ============ altstack: run function with dedicated stack, then release the memory (Dan Good) cppmagic: Abuse of the C preprocessor (David Gibson) deque: type-preserving resizing circular deque (Dan Good) rszshm: resizable pointer-safe shared memory (Dan Good) xstring: bounded string builder with three valued comparator (Dan Good) Updates & bugfixes: =================== io: fake time support for mocking time (Rusty Russell) pipecmd: fd leak fix and stderr support (Rusty Russell) tal/str: fix infinite loop with tal_fmt(""). aga: fix unused return result compiler warning (David Gibson) strmap, htable, idtree: fix clang warnings (David Gibson) ccan/mem: new memtaint() to invalidae memory (Rusty Russell) Infrastructure: =============== _info: new "ported" parameter for non-portable modules (Rusty Russell) Makefiles: cleanups and fixes to create webpages locally (Joel Stanley) travis: now compiles with clang as well as gcc (David Gibson) ccanlint/configurator: compile cleanly under clang (David Gibson) Cheers, Rusty. _______________________________________________ ccan mailing list ccan@lists.ozlabs.org https://lists.ozlabs.org/listinfo/ccan