diff --git a/format.cc b/format.cc index d35a0aac..059e8701 100644 --- a/format.cc +++ b/format.cc @@ -117,7 +117,7 @@ const char fmt::internal::DIGITS[] = "6061626364656667686970717273747576777879" "8081828384858687888990919293949596979899"; -const uint64_t fmt::internal::POWERS_OF_10[] = { +FMT_GCC_EXTENSION const uint64_t fmt::internal::POWERS_OF_10[] = { 0, 10, 100, diff --git a/format.h b/format.h index e4d40fe4..3e5e553c 100644 --- a/format.h +++ b/format.h @@ -44,6 +44,7 @@ #ifdef __GNUC__ # define FMT_GCC_VERSION (__GNUC__ * 100 + __GNUC_MINOR__) +# define FMT_GCC_EXTENSION __extension__ #endif // Compatibility with compilers other than clang. @@ -79,13 +80,8 @@ namespace fmt { // Fix the warning about long long on older versions of GCC // that don't support the diagnostic pragma. -#ifdef __GNUC__ -__extension__ typedef long long LongLong; -__extension__ typedef unsigned long long ULongLong; -#else -typedef long long LongLong; -typedef unsigned long long ULongLong; -#endif +FMT_GCC_EXTENSION typedef long long LongLong; +FMT_GCC_EXTENSION typedef unsigned long long ULongLong; namespace internal {