[Bug analyzer/98797] Simpler version of the XFAIL in casts-1.c with proposed solution

brian.sobulefsky at protonmail dot com gcc-bugzilla@gcc.gnu.org
Thu Feb 10 18:54:55 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98797

--- Comment #4 from Brian Sobulefsky <brian.sobulefsky at protonmail dot com> ---
(In reply to David Malcolm from comment #3)
> The branch in comment #0 now gives a 404, but in any case I had to rewrite
> the store code in gcc 12 to support detection of uses of uninitialized
> values, so any patch is likely bit-rotted.  The new store implementation
> allows for a simpler solution that avoids special-casing, which I've
> committed as the patch above, fixing the xfails.

Hi David. As you requested last year I provided an actual patch file generated
by git. If you remember, I did not have a job then and was just sort of looking
around for projects to get involved in. I was new to the distributed
development thing, as I was mostly just a hobby hacker, and so initially was
not sure how to get you the fix. I submitted the patch in an email chain with
subject "Patch for PR analyzer/98797" around February 9, 20201.

A while after, I deleted the repository, as it was both not the preferred way
of submitting gcc patches anyway and also I had not done any gcc work in a
while, so it was just a severely out of date mirror.

I have not looked at your codebase in a while, so if things have changed that
is fine. The solution I tracked down last year was based on the way you had
everything structured at the time. It was a fun project to try to trace someone
else's project like that anyway.

I know we had also had some discussions regarding constraints on another
thread. I had come up with a preliminary way for the constraints to resolve
addition and some other operations, but that problem became a bit more complex
as we needed to decide how to handle the possibility of overflow and I never
saw a final answer on that question. I had gone down that road due to a bug
found in a run from the people at openssl where the constraint manager was not
able to follow a loop correctly. This had involved your "widening_svalue", and
I was not clear on how that worked, but for starters I got it to understand
basic operations like "svalue+3" or whatever, and then that led us to ask how
to handle the possibility of overflow.

If you would like some targeted assistance with development and bug fixing, let
me know.


More information about the Gcc-bugs mailing list