Add -Wc++-compat when gcc is used for better compatibility with MSVC

Problem: Assigning a void * to a different typed pointer works with gcc but fails with MSVC (C99 vs C++)
Solution: Add -Wc++-compat when gcc is used to generate a warning (and therefore fail) under gcc too