This is an archive of the discontinued LLVM Phabricator instance.

[AST] Always set dependent-type for the CallExpr for error-recovery in C.
ClosedPublic

Authored by hokein on Jun 9 2023, 10:20 AM.

Details

Summary

When build CallExpr for error-recovery where we have any dependent
child nodes), we should set a dependent type for CallExpr to avoid
running into some unexpected following semantic analysis.

This also aligns with the C++ behavior.

This fixes the symptom crashes: https://github.com/llvm/llvm-project/issues/50244

Diff Detail

Event Timeline

hokein created this revision.Jun 9 2023, 10:20 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 9 2023, 10:20 AM
hokein requested review of this revision.Jun 9 2023, 10:20 AM
Herald added a project: Restricted Project. · View Herald TranscriptJun 9 2023, 10:20 AM
aaron.ballman accepted this revision.Jun 9 2023, 10:47 AM

LGTM, though please add a release note about the fix. Thank you!

This revision is now accepted and ready to land.Jun 9 2023, 10:47 AM
shafik accepted this revision.Jun 9 2023, 12:02 PM

Thank you for the quick fix!

hokein updated this revision to Diff 530382.Jun 11 2023, 10:22 PM

add release note.

This revision was landed with ongoing or failed builds.Jun 11 2023, 10:23 PM
This revision was automatically updated to reflect the committed changes.