-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
C++: Rewrite cpp/unbounded-write
away from DefaultTaintTracking
#14669
Conversation
9908cf6
to
98d7ac8
Compare
98d7ac8
to
e90803a
Compare
As expected, DCA shows lots of changes (similar to what we saw on MRVA). Other than looking through most of the MRVA ones, I've verified that the |
Co-authored-by: Jeroen Ketema <[email protected]>
Can you summarise what you observed in MRVA? |
Sure.
Then there are various projects that lose or gain 1 result. I'm not super concerned about these since the many of these projects have >50 alerts on the query already. After you noticed the problems with global variables (that are now fixed in #14736) I found a couple of instances of this as well, I think. I expect these to disappear once #14736 goes in. I don't think we need to wait for that PR to be merged before merging this, though |
This PR rewrites the
cpp/unbounded-write
query away fromDefaultTaintTracking
. MRVA does report some result changes (both new results and disappearing results). The new results all look genuine, and were hidden by the bad default barriers inDefaultTaintTracking
, and all of the disappearing results have been FPs being removed because we now realise that a variable is being overwritten along the path (which we didn't do before becauseDefaultTaintTracking
conflatedx
andglval<x>
).CI is unhappy because of internal test changes. I've accepted these in the internal repo.