Page MenuHomePhabricator

PR45879: Keep evaluated expression in LValue object
Needs ReviewPublic

Authored by sepavloff on May 31 2021, 4:09 AM.

Details

Reviewers
rsmith
Summary

Class LValue keeps result of lvalue evaluation. In some analyses it is
also necessary to have access to the original expression. This change
adds new member to LValue to keep the expression and initializes this
member when an lvalue is evaluated using LValueExprEvaluator.

With this change LHS expression becomes available in
HandleUnionActiveMemberChange and it becomes possible to fix PR45879.

Diff Detail

Event Timeline

sepavloff requested review of this revision.May 31 2021, 4:09 AM
sepavloff created this revision.
Herald added a project: Restricted Project. · View Herald TranscriptMay 31 2021, 4:09 AM
tambre added a subscriber: tambre.Jul 5 2021, 11:54 PM

Rebased patch

Gentle ping. I can't review this, but if someone can, it would be awesome. https://bugs.llvm.org/show_bug.cgi?id=45879 is breaking some libc++ tests.