[clang][dataflow] Add a test demonstrating an issue in unchecked-optional-access-check #110870
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
createStorageLocation used in transferCallReturningOptional:
llvm-project/clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
Line 515 in 09ba83b
can stop recursively creating storage locations when it hits a field of
reference type for a non-optional record:
llvm-project/clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
Line 67 in 3ca5d80
If an optional is reached through that field then it may not have a
storage location by the type we handle has_value in a transfer function.