diff --git a/conan/tools/_compilers.py b/conan/tools/_compilers.py index 2eaa2718ca2..23c952a92ae 100644 --- a/conan/tools/_compilers.py +++ b/conan/tools/_compilers.py @@ -302,7 +302,7 @@ def _cppstd_gcc(gcc_version, cppstd): v14 = "c++1y" vgnu14 = "gnu++1y" - if Version(gcc_version) >= "5.1": + if Version(gcc_version) >= "5": v17 = "c++1z" vgnu17 = "gnu++1z" diff --git a/conans/client/build/cppstd_flags.py b/conans/client/build/cppstd_flags.py index 4a323580fa4..3578cbcbacb 100644 --- a/conans/client/build/cppstd_flags.py +++ b/conans/client/build/cppstd_flags.py @@ -253,7 +253,7 @@ def _cppstd_gcc(gcc_version, cppstd): v14 = "c++1y" vgnu14 = "gnu++1y" - if Version(gcc_version) >= "5.1": + if Version(gcc_version) >= "5": v17 = "c++1z" vgnu17 = "gnu++1z" diff --git a/conans/test/unittests/client/build/cpp_std_flags_test.py b/conans/test/unittests/client/build/cpp_std_flags_test.py index a87e638619b..868bef5d7e8 100644 --- a/conans/test/unittests/client/build/cpp_std_flags_test.py +++ b/conans/test/unittests/client/build/cpp_std_flags_test.py @@ -52,7 +52,8 @@ def test_gcc_cppstd_flags(self): self.assertEqual(_make_cppstd_flag("gcc", "5", "11"), '-std=c++11') self.assertEqual(_make_cppstd_flag("gcc", "5", "14"), '-std=c++14') self.assertEqual(_make_cppstd_flag("gcc", "5", "gnu14"), '-std=gnu++14') - self.assertEqual(_make_cppstd_flag("gcc", "5", "17"), None) + self.assertEqual(_make_cppstd_flag("gcc", "5", "17"), '-std=c++1z') + self.assertEqual(_make_cppstd_flag("gcc", "5", "gnu17"), '-std=gnu++1z') self.assertEqual(_make_cppstd_flag("gcc", "5.1", "11"), '-std=c++11') self.assertEqual(_make_cppstd_flag("gcc", "5.1", "14"), '-std=c++14')