llvm / llvm/llvm-project

Consider removing support for `base::Optional`from `bugprone-unchecked-optional-access`

Open
#187,013 1 comment 0 reactions 0 assignees View on GitHub
clang-tidy clang:dataflow code-cleanup
Dominant language
LLVM
Stars
40.5k
Forks
18.7k
PR merge metrics
PR metrics pending

Description

- `base::Optional` from Chromium was replaced with `absl::optional` in 2021 https://source.chromium.org/chromium/chromium/src/+/7dd58adeb690920a7474b4f7c5d71d23b15d4698 and https://docs.google.com/document/d/1xK8E9HyNJW8_zHNLOwFZC5cU9QJj6sK7gXkYCMjbrBQ/edit?tab=t.0

- and then `absl::optional` is also now removed https://github.com/abseil/abseil-cpp/commit/22b1f421fa678434722202f2a883a565b7de5343 (early 2025)

I'm not sure how many users are stuck on old versions of the library, but it has been a while since Chromium's `base::Optional` removal.

Abseil LTS has a 2 year window (https://abseil.io/about/releases), so that one could wait a bit more.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.