diff --git a/src/gflags_completions.cc b/src/gflags_completions.cc index 3a47623..d7097ca 100644 --- a/src/gflags_completions.cc +++ b/src/gflags_completions.cc @@ -47,6 +47,8 @@ // 5b) Trim most flag's descriptions to fit on a single terminal line +#include "gflags_completions.h" + #include "config.h" #include diff --git a/src/windows_port.cc b/src/windows_port.cc index 9ccb630..b5b7194 100644 --- a/src/windows_port.cc +++ b/src/windows_port.cc @@ -44,6 +44,7 @@ // These call the windows _vsnprintf, but always NUL-terminate. #if !defined(__MINGW32__) && !defined(__MINGW64__) /* mingw already defines */ +#if !(defined(_MSC_VER) && _MSC_VER >= 1900) /* msvc 2015 already defines */ #ifdef _MSC_VER # pragma warning(push) @@ -59,8 +60,6 @@ int safe_vsnprintf(char *str, size_t size, const char *format, va_list ap) { # pragma warning(pop) #endif -#if _MSC_VER < 1900 // msvs 2015 finally includes snprintf - int snprintf(char *str, size_t size, const char *format, ...) { int r; va_list ap; @@ -70,6 +69,5 @@ int snprintf(char *str, size_t size, const char *format, ...) { return r; } -#endif - +#endif /* if !(defined(_MSC_VER) && _MSC_VER >= 1900) */ #endif /* #if !defined(__MINGW32__) && !defined(__MINGW64__) */ diff --git a/src/windows_port.h b/src/windows_port.h index c8ff24f..554b9c9 100644 --- a/src/windows_port.h +++ b/src/windows_port.h @@ -63,12 +63,14 @@ * name vsnprintf, since windows defines that (but not snprintf (!)). */ #if !defined(__MINGW32__) && !defined(__MINGW64__) /* mingw already defines */ +#if !(defined(_MSC_VER) && _MSC_VER >= 1900) /* msvc 2015 already defines */ extern GFLAGS_DLL_DECL int snprintf(char *str, size_t size, const char *format, ...); extern int GFLAGS_DLL_DECL safe_vsnprintf(char *str, size_t size, const char *format, va_list ap); #define vsnprintf(str, size, format, ap) safe_vsnprintf(str, size, format, ap) #define va_copy(dst, src) (dst) = (src) +#endif #endif /* #if !defined(__MINGW32__) && !defined(__MINGW64__) */ #ifdef _MSC_VER diff --git a/test/gflags_declare_flags.cc b/test/gflags_declare_flags.cc index dc53de5..2491686 100644 --- a/test/gflags_declare_flags.cc +++ b/test/gflags_declare_flags.cc @@ -3,6 +3,7 @@ DECLARE_string(message); // in gflags_delcare_test.cc +void print_message(); void print_message() { std::cout << FLAGS_message << std::endl; diff --git a/test/gflags_unittest.cc b/test/gflags_unittest.cc index 80f7398..cc3049b 100644 --- a/test/gflags_unittest.cc +++ b/test/gflags_unittest.cc @@ -1485,7 +1485,7 @@ TEST(FlagsValidator, FlagSaver) { } // unnamed namespace -int main(int argc, char **argv) { +static int main(int argc, char **argv) { // Run unit tests only if called without arguments, otherwise this program // is used by an "external" usage test