ymandel created this revision. ymandel added a reviewer: gribozavr2. Herald added subscribers: martong, xazax.hun. Herald added a reviewer: NoQ. Herald added a project: All. ymandel requested review of this revision. Herald added a project: clang.
Some compilers can't determine that all cases of the switch return (or are unreachable) and warn about control reaching end of non-void function. Explicitly mark with `llvm_unreachable`. Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D135978 Files: clang/lib/Analysis/FlowSensitive/Transfer.cpp Index: clang/lib/Analysis/FlowSensitive/Transfer.cpp =================================================================== --- clang/lib/Analysis/FlowSensitive/Transfer.cpp +++ clang/lib/Analysis/FlowSensitive/Transfer.cpp @@ -104,6 +104,7 @@ return unpackBinaryBoolValue<BiconditionalValue>(Env, V, &Environment::makeIff); } + llvm_unreachable("All reachable cases in switch return"); } // Unpacks the value (if any) associated with `E` and updates `E` to the new
Index: clang/lib/Analysis/FlowSensitive/Transfer.cpp =================================================================== --- clang/lib/Analysis/FlowSensitive/Transfer.cpp +++ clang/lib/Analysis/FlowSensitive/Transfer.cpp @@ -104,6 +104,7 @@ return unpackBinaryBoolValue<BiconditionalValue>(Env, V, &Environment::makeIff); } + llvm_unreachable("All reachable cases in switch return"); } // Unpacks the value (if any) associated with `E` and updates `E` to the new
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits