Use std::optional instead of llvm::Optional
Note that llvm::Optional is just an alias for std::optional these days
and has since been deprecated upstream in favor of std::optional.
PiperOrigin-RevId: 513248484
diff --git a/nullability_verification/pointer_nullability_diagnosis.h b/nullability_verification/pointer_nullability_diagnosis.h
index a4785f3..5551f2d 100644
--- a/nullability_verification/pointer_nullability_diagnosis.h
+++ b/nullability_verification/pointer_nullability_diagnosis.h
@@ -5,12 +5,13 @@
#ifndef CRUBIT_NULLABILITY_VERIFICATION_POINTER_NULLABILITY_DIAGNOSIS_H_
#define CRUBIT_NULLABILITY_VERIFICATION_POINTER_NULLABILITY_DIAGNOSIS_H_
+#include <optional>
+
#include "nullability_verification/pointer_nullability_lattice.h"
#include "clang/AST/ASTContext.h"
#include "clang/AST/Stmt.h"
#include "clang/Analysis/FlowSensitive/CFGMatchSwitch.h"
#include "clang/Analysis/FlowSensitive/DataflowEnvironment.h"
-#include "llvm/ADT/Optional.h"
namespace clang {
namespace tidy {
@@ -31,7 +32,7 @@
///
/// TODO(b/233582219): Extend diagnosis to return more information, e.g. the
/// type of violation.
- llvm::Optional<CFGElement> diagnose(
+ std::optional<CFGElement> diagnose(
const CFGElement* Elt, ASTContext& Ctx,
const dataflow::TransferStateForDiagnostics<PointerNullabilityLattice>&
State) {
@@ -41,7 +42,7 @@
private:
dataflow::CFGMatchSwitch<
const dataflow::TransferStateForDiagnostics<PointerNullabilityLattice>,
- llvm::Optional<CFGElement>>
+ std::optional<CFGElement>>
Diagnoser;
};
diff --git a/rs_bindings_from_cc/importer.cc b/rs_bindings_from_cc/importer.cc
index 2791d0c..c032a68 100644
--- a/rs_bindings_from_cc/importer.cc
+++ b/rs_bindings_from_cc/importer.cc
@@ -49,7 +49,6 @@
#include "clang/Basic/SourceManager.h"
#include "clang/Basic/Specifiers.h"
#include "clang/Sema/Sema.h"
-#include "llvm/ADT/Optional.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/FormatVariadic.h"
@@ -586,7 +585,7 @@
source_location = source_manager.getExpansionLoc(source_location);
}
auto id = source_manager.getFileID(source_location);
- llvm::Optional<llvm::StringRef> filename =
+ std::optional<llvm::StringRef> filename =
source_manager.getNonBuiltinFilenameForID(id);
if (!filename) {
return BazelLabel("//:_nothing_should_depend_on_private_builtin_hdrs");
diff --git a/rs_bindings_from_cc/importers/function.cc b/rs_bindings_from_cc/importers/function.cc
index 864eace..9656fbd 100644
--- a/rs_bindings_from_cc/importers/function.cc
+++ b/rs_bindings_from_cc/importers/function.cc
@@ -88,7 +88,7 @@
// annotations found. This will allow avoiding the call to
// `expectedToOptional` which can sometimes indicate design problems.
clang::tidy::lifetimes::LifetimeSymbolTable lifetime_symbol_table;
- llvm::Optional<clang::tidy::lifetimes::FunctionLifetimes> lifetimes =
+ std::optional<clang::tidy::lifetimes::FunctionLifetimes> lifetimes =
expectedToOptional(clang::tidy::lifetimes::GetLifetimeAnnotations(
function_decl, *ictx_.invocation_.lifetime_context_,
&lifetime_symbol_table));
diff --git a/rs_bindings_from_cc/ir.h b/rs_bindings_from_cc/ir.h
index f039abb..9a5f0a6 100644
--- a/rs_bindings_from_cc/ir.h
+++ b/rs_bindings_from_cc/ir.h
@@ -32,7 +32,6 @@
#include "clang/AST/DeclTemplate.h"
#include "clang/AST/RawCommentList.h"
#include "llvm/ADT/APSInt.h"
-#include "llvm/ADT/Optional.h"
#include "llvm/Support/FormatVariadic.h"
#include "llvm/Support/JSON.h"