lib: fix definition of LIBNOTMUCH_CHECK_VERSION

Fix bug reported in id:20160606124522.g2y2eazhhrwjsa4h@flatcap.org

Although the C99 standard 6.10 is a little non-obvious on this point,
the docs for e.g. gcc are unambiguous. And indeed in practice with the
extra space, this code fails

#include <stdio.h>
#define foo (x) (x+1)

int main(int argc, char **argv){
  printf("%d\n",foo(1));
}
This commit is contained in:
David Bremner 2016-06-07 07:37:57 -03:00
parent 1e96445cb5
commit 44cfa90bdc

View file

@ -93,7 +93,7 @@ NOTMUCH_BEGIN_DECLS
* #endif
* @endcode
*/
#define LIBNOTMUCH_CHECK_VERSION (major, minor, micro) \
#define LIBNOTMUCH_CHECK_VERSION(major, minor, micro) \
(LIBNOTMUCH_MAJOR_VERSION > (major) || \
(LIBNOTMUCH_MAJOR_VERSION == (major) && LIBNOTMUCH_MINOR_VERSION > (minor)) || \
(LIBNOTMUCH_MAJOR_VERSION == (major) && LIBNOTMUCH_MINOR_VERSION == (minor) && \