r338962 - Use Optional instead of unique_ptr; NFC
George Burgess IV via cfe-commits
cfe-commits at lists.llvm.org
Sat Aug 4 18:37:08 PDT 2018
Author: gbiv
Date: Sat Aug 4 18:37:07 2018
New Revision: 338962
URL: http://llvm.org/viewvc/llvm-project?rev=338962&view=rev
Log:
Use Optional instead of unique_ptr; NFC
Looks like the only reason we use a unique_ptr here is so that we can
conditionally construct a LogicalErrorHandler. It's a small type, and
Optional can do the same thing with 100% fewer heap allocations.
Modified:
cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp
Modified: cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp?rev=338962&r1=338961&r2=338962&view=diff
==============================================================================
--- cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp (original)
+++ cfe/trunk/lib/Sema/AnalysisBasedWarnings.cpp Sat Aug 4 18:37:07 2018
@@ -2068,11 +2068,11 @@ AnalysisBasedWarnings::IssueWarnings(sem
}
// Install the logical handler for -Wtautological-overlap-compare
- std::unique_ptr<LogicalErrorHandler> LEH;
+ llvm::Optional<LogicalErrorHandler> LEH;
if (!Diags.isIgnored(diag::warn_tautological_overlap_comparison,
D->getLocStart())) {
- LEH.reset(new LogicalErrorHandler(S));
- AC.getCFGBuildOptions().Observer = LEH.get();
+ LEH.emplace(S);
+ AC.getCFGBuildOptions().Observer = &*LEH;
}
// Emit delayed diagnostics.
More information about the cfe-commits
mailing list