X-Git-Url: https://git.ralfj.de/gltest.git/blobdiff_plain/abe5b74c820514f9f5896309e0e192569db35651..b0ce9e768aed86e894dcffae75e69a80c51e7b5d:/glutil.h?ds=sidebyside diff --git a/glutil.h b/glutil.h index 3c1a6d2..dd1051e 100644 --- a/glutil.h +++ b/glutil.h @@ -23,12 +23,24 @@ #include #endif +/** + * GNUC has the ability to check format strings that follow the syntax used in printf and others. +Hide the differences between different compilers in this GNUC_FORMAT_CHECK macro. +Copied from Wireshark sources. +*/ +#if __GNUC__ >= 2 + #define GNUC_FORMAT_CHECK(archetype, string_index, first_to_check) __attribute__((format (archetype, string_index, first_to_check))) +#else + #define GNUC_FORMAT_CHECK(archetype, string_index, first_to_check) +#endif + /* Function name resolving: Call this after initialising the context, but before any utility function is called */ typedef void (*T_proc)(void); typedef T_proc (*T_glGetProcAddress)(char const * procname); void resolveFunctionPointers(T_glGetProcAddress p_glGetProcAddress); /* The actual utility functions */ +void die(const char *msg, ...) GNUC_FORMAT_CHECK(printf, 1, 2); void checkGlError(const char *what); void initialise2dProjection(); void drawQuad(GLfloat red, GLfloat green, GLfloat blue, GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2);