cJSON: prevent incompatible C and header versions

Introduces a preprocessor directive that aborts the compilation if the
version numbers in the header don't match with the numbers in the c
file.
This commit is contained in:
Max Bruckner 2017-02-15 23:21:50 +01:00
parent cf862d0fed
commit 123bb1af7b
1 changed files with 5 additions and 0 deletions

View File

@ -58,6 +58,11 @@ const char *cJSON_GetErrorPtr(void)
return (const char*) global_ep;
}
/* This is a safeguard to prevent copy-pasters from using incompatible C and header files */
#if (CJSON_VERSION_MAJOR != 1) || (CJSON_VERSION_MINOR != 2) || (CJSON_VERSION_PATCH != 1)
#error cJSON.h and cJSON.c have different versions. Make sure that both have the same.
#endif
extern const char* cJSON_Version(void)
{
static char version[15];