@alexfh provided an example that demonstrates that elided copy constructors may get agglutinated due to improper control flow when default arguments are involved.
Suppress the assertion failure for now. Proper support is still an open problem.
Paths
| Differential D49213
[analyzer] pr38072: Suppress an assertion failure for eliding the same destructor twice due to the default argument problem. ClosedPublic Authored by NoQ on Jul 11 2018, 6:30 PM.
Details
Summary @alexfh provided an example that demonstrates that elided copy constructors may get agglutinated due to improper control flow when default arguments are involved. Suppress the assertion failure for now. Proper support is still an open problem.
Diff Detail
Event TimelineHerald added subscribers: cfe-commits, mikhail.ramalho, baloghadamsoftware. · View Herald TranscriptJul 11 2018, 6:30 PM NoQ added a parent revision: D49210: [CFG] [analyzer] NFC: Enumerate construction context layer kinds and re-use their code for ExprEngine keys..Jul 11 2018, 6:30 PM NoQ added inline comments.
This revision is now accepted and ready to land.Jul 17 2018, 11:32 AM Closed by commit rC338441: [analyzer] Fix eliding the same destructor twice due to buggy default arguments. (authored by NoQ). · Explain WhyJul 31 2018, 2:18 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 158384 lib/StaticAnalyzer/Core/ExprEngine.cpp
test/Analysis/temporaries.cpp
|
Same problem here.