The joined nodes now actually have the same state. That was intended from the start but the original implementation turned out to be buggy.
Before:
After:
Differential D69150
[analyzer] Fix hidden node traversal in exploded graph dumps. Authored by NoQ on Oct 17 2019, 4:43 PM.
Details
The joined nodes now actually have the same state. That was intended from the start but the original implementation turned out to be buggy. Before: After:
Diff Detail
Event Timeline
Comment Actions When you see static bool traverseHiddenNodes(
const ExplodedNode *N,
llvm::function_ref<void(const ExplodedNode *)> PreCallback,
llvm::function_ref<void(const ExplodedNode *)> PostCallback,
llvm::function_ref<bool(const ExplodedNode *)> Stop) {that is 100% will produce errors, as it wants to be so smart. I think it is a very bad design from the beginning, so it will be still bugprone. Other than that now every node makes sense, thanks!
| ||||||||||||||||||||||||||||||||
The actual filename is gracefully omitted so that not to confuse buildbots because it's going to be an absolute path.