[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-24 Thread Giel van Schijndel via Phabricator via cfe-commits
muggenhor added a comment. FYI: I've added a set of tests. But in the process discovered there's at least one assumption that doesn't hold for boost::optional. So I'll have to adjust the implementation for that. That's a bit more involved change, so will take some time. (Specifically the assum

[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-23 Thread Piotr Zegar via Phabricator via cfe-commits
PiotrZSL requested changes to this revision. PiotrZSL added a comment. This revision now requires changes to proceed. - Add some simple test (positive and negative), just to prove that it's detected - Add release note entry - Add entry in check documentation, that boost::optional may be partially

[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-23 Thread Dmitri Gribenko via Phabricator via cfe-commits
gribozavr2 added a comment. The mock optional types in the unit test are just declarations of the API - they don't need any implementations (function or method bodies should be omitted). But the declarations of classes, methods, and functions should mirror the production header closely. There a

[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-23 Thread Giel van Schijndel via Phabricator via cfe-commits
muggenhor added a comment. Sure. Looking at the test I'm unsure though, are the `optional` implementations in there stripped copies of the real implementations? Or just a minimal implementation that fits the basic optional interface in the given namespace? Repository: rG LLVM Github Monorepo

[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-23 Thread Dmitri Gribenko via Phabricator via cfe-commits
gribozavr2 added a comment. Could you change the tests to cover the new case? They are here: `llvm-project/clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp` Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D151192/new/ https

[PATCH] D151192: [clang-tidy] have bugprone-unchecked-optional-access check boost::optional usage

2023-05-23 Thread Giel van Schijndel via Phabricator via cfe-commits
muggenhor created this revision. Herald added subscribers: carlosgalvezp, xazax.hun. Herald added a reviewer: NoQ. Herald added a project: All. muggenhor requested review of this revision. Herald added a project: clang. Herald added a subscriber: cfe-commits. Repository: rG LLVM Github Monorepo