From: <Joe...@t-...> - 2017-05-31 12:51:03
|
Hi, That change is incorrect (the old test was incorrect too). - #if defined(UNIX_LINUX) || defined(UNIX_FREEBSD) || (defined(UNIX_MACOSX) && (__GNUC__ == 4) && ((__GNUC_MINOR__ >= 5))) + #if defined(UNIX_LINUX) || defined(UNIX_FREEBSD) || (defined(UNIX_MACOSX) && (defined(__clang__) || ((__GNUC__ >= 4) && (__GNUC_MINOR__ >= 5)))) The old one did not test correctly for GCC >= 4.5 (supposing that was intended). For example, think about gcc v 5.2. The new one will produce different results for gcc 5.2 and 5.7. This is certainly unwanted. The GCC manual shows examples about how to test for >= a specific version (whether x*100+y is a good trick is debatable). https://gcc.gnu.org/onlinedocs/cpp/Common-Predefined-Macros.html Regards, Jörg |