This is an archive of the discontinued LLVM Phabricator instance.

[clang][dataflow] Fix bug in joining bool values.
ClosedPublic

Authored by ymandel on Jan 13 2023, 10:38 AM.

Details

Summary

Currently, the code assumes that all boolean-typed values are an instance of
BoolValue (or its subclasses). Yet, lvalues violate this assumption. This
patch drops the assumption and strengthens the check to confirm the shape of
both values being joined.

The patch also notes as FIXMES a number of problems discovered fixing this bug.

Diff Detail

Event Timeline

ymandel created this revision.Jan 13 2023, 10:38 AM
Herald added a project: Restricted Project. · View Herald Transcript
ymandel requested review of this revision.Jan 13 2023, 10:38 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 13 2023, 10:38 AM
xazax.hun accepted this revision.Jan 13 2023, 11:48 AM
This revision is now accepted and ready to land.Jan 13 2023, 11:48 AM
sgatev accepted this revision.Jan 16 2023, 1:13 AM
This revision was landed with ongoing or failed builds.Jan 19 2023, 7:59 AM
This revision was automatically updated to reflect the committed changes.