actually there are lot of things that can throw warnings when compiling.
0 constant for null (like hundreds of this warnings) => fix: use NULL and optionally add a flag for C++11 wich generates "nullptr" instead of "NULL"
there are lot of old style casts around there, they should be replaced with static_cast or reinterpret_cast.
certain defines are used without being checked (for example _MSC_VER)
a fix is to expand them to other macros in order to always have defined EXAMPLE:
#ifndef _MSC_VER #define GL_GEN_MSC_VER 0 //just a safe value to make tests fails #else #define GL_GEN_MSC_VER _MSC_VER #endif //later #if (GL_GEN_MSC_VER >= 800) || //bla bla
Another optional point, is to allows exporting by another command "-dllstuff" that can be used like GLEW_STATIC or GLEW_BUILD so that if desired, someone can precompile glLoadGen into a DLL or a static library