mboehme added inline comments.
================
Comment at: clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp:43
+namespace {
+
----------------
There were a number of pre-existing declarations that were ODR violation risks.
I'm adding a new file-local function below, so instead of making it static, I
decided to put everything that's supposed to be file-local in an anonymous
namespace.
================
Comment at: clang/unittests/Analysis/FlowSensitive/TransferTest.cpp:505
+ cast<AggregateStorageLocation>(FooRefVal->getReferentLoc());
+ EXPECT_THAT(Env.getValue(FooReferentLoc), NotNull());
+ EXPECT_THAT(Env.getValue(FooReferentLoc.getChild(*BarDecl)), IsNull());
----------------
We're creating a slightly deeper object hierarchy here because we now call
`createValue()` with the non-reference type in a number of places. I believe
this slightly deeper hierarchy shouldn't be a problem in practice.
================
Comment at: clang/unittests/Analysis/FlowSensitive/TransferTest.cpp:2662
+
+ ASSERT_THAT(EnvAfterLoop.getValue(*BarDecl), IsNull());
});
----------------
The changes in this test are a result of the fact that we now remove
declarations from `Environment::DeclToLoc` when they go out of scope.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D149144/new/
https://reviews.llvm.org/D149144
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits