Date: Thu, 22 Jan 2015 07:49:15 +0100 From: Hallvard Breien Furuseth h.b.furuseth@usit.uio.no To: leo@yuriev.ru, openldap-its@OpenLDAP.org Subject: Re: (ITS#8018) a lot of warnings building with -Wall
On 22/01/15 06:13, leo@yuriev.ru wrote:
I unexpectedly detected that the variadic macro feature of C99 was already used in OpenLDAP 2.4 ;)
Look a bit closer:
grep -R __VA_ARGS__ * build/ltmain.sh:# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__) contrib/ldapc++/ltmain.sh:# define DEBUG(format, ...) fprintf(stderr, format, __VA_ARGS__)
ltmain.sh is a shell/code library generated by GNU libtool. Lots of stuff in there which we do not use.
libraries/liblmdb/mdb.c: fprintf(stderr, "%s:%d " fmt "\n", mdb_func_, __LINE__, __VA_ARGS__) servers/slapd/back-bdb/back-bdb.h:#define BDB_LOG_PRINTF(env,txn,fmt,...) (env)->log_printf((env),(txn),(fmt),__VA_ARGS__) servers/slapd/back-bdb/back-bdb.h:#define BDB_LOG_PRINTF(env,txn,fmt,...) __db_logmsg((env),(txn),"DIAGNOSTIC",0,(fmt),__VA_ARGS__)
Debug macros which are off by default and fall back to ((void)0) or somesuch.
Hallvard, thanks.
Of course, I understand that __VA_ARGS__ are used only for debugging currently. But this is makes me think that recent development and testing of OpenLDAP are carried out only in today's environment (modern Linux and gcc).
Could anyone say about the list of a system-compiler pairs with which OpenLDAP was tested or just successfully compiled?
For instance, in our fork we plan limit the support to modern systems with gcc, clang and last msvc compilers.
However, users ask us - What platforms are not supported by your fork in comparison with original OpenLDAP?
For example https://gcc.gnu.org/gcc-4.1/buildstat.html
Is there something similar for OpenLDAP?
Leonid.