https://github.com/dpaoliello created https://github.com/llvm/llvm-project/pull/159408
Fixes this error: ``` llvm\clang\lib\Driver\ToolChains\CommonArgs.cpp(3523) : warning C4715: 'clang::driver::tools::complexRangeKindToStr': not all control paths return a value ``` This was not seen in the builders as they use MSVC 2019. Opted to add an `llvm_unreachable` after the switch instead of a `default` so that Clang's warnings about uncovered enum values will still trigger. This matches #112767 and #139309. Also removed the dead `break` statements after the returns. >From 3c386d5507ccba7d43d99f6725cb7600bf6889ba Mon Sep 17 00:00:00 2001 From: Daniel Paoliello <[email protected]> Date: Wed, 17 Sep 2025 10:20:09 -0700 Subject: [PATCH] Fix build failure in CommonArgs.cpp on MSVC 2022: warning C4715: 'clang::driver::tools::complexRangeKindToStr': not all control paths return a value --- clang/lib/Driver/ToolChains/CommonArgs.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/clang/lib/Driver/ToolChains/CommonArgs.cpp b/clang/lib/Driver/ToolChains/CommonArgs.cpp index b50549219e4e8..716e04003f065 100644 --- a/clang/lib/Driver/ToolChains/CommonArgs.cpp +++ b/clang/lib/Driver/ToolChains/CommonArgs.cpp @@ -3506,20 +3506,16 @@ std::string tools::complexRangeKindToStr(LangOptions::ComplexRangeKind Range) { switch (Range) { case LangOptions::ComplexRangeKind::CX_Full: return "full"; - break; case LangOptions::ComplexRangeKind::CX_Basic: return "basic"; - break; case LangOptions::ComplexRangeKind::CX_Improved: return "improved"; - break; case LangOptions::ComplexRangeKind::CX_Promoted: return "promoted"; - break; case LangOptions::ComplexRangeKind::CX_None: return "none"; - break; } + llvm_unreachable("Unknown ComplexRangeKind!"); } std::string _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
