diff --git a/conans/client/conf/detect.py b/conans/client/conf/detect.py index 80b89c543c1..5b9cf1ed40a 100644 --- a/conans/client/conf/detect.py +++ b/conans/client/conf/detect.py @@ -265,6 +265,11 @@ def _detect_compiler_version(result, output, profile_path): result.append(("compiler.base.version", "4.8")) else: result.append(("compiler.base.version", "4.4")) + elif compiler == "msvc": + # Add default mandatory fields for MSVC compiler + result.append(("compiler.cppstd", "14")) + result.append(("compiler.runtime", "dynamic")) + result.append(("compiler.runtime_type", "Release")) def _detect_os_arch(result, output): diff --git a/conans/test/unittests/util/detect_test.py b/conans/test/unittests/util/detect_test.py index 1ab8fe9c326..4edb813f2d8 100644 --- a/conans/test/unittests/util/detect_test.py +++ b/conans/test/unittests/util/detect_test.py @@ -102,3 +102,6 @@ def test_vs2022(self): result = dict(result) self.assertEqual('msvc', result['compiler']) self.assertEqual('193', result['compiler.version']) + self.assertEqual('14', result['compiler.cppstd']) + self.assertEqual('dynamic', result['compiler.runtime']) + self.assertEqual('Release', result['compiler.runtime_type'])