[all-commits] [llvm/llvm-project] d4e935: [clang][AST] Propagate the value-dependent bit for...

Haojian Wu via All-commits all-commits at lists.llvm.org
Fri May 19 14:44:02 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: d4e935240f0223cdf2270dde587960d3d3868c6f
      https://github.com/llvm/llvm-project/commit/d4e935240f0223cdf2270dde587960d3d3868c6f
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2023-05-19 (Fri, 19 May 2023)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ComputeDependence.cpp
    M clang/test/AST/ast-dump-recovery.c

  Log Message:
  -----------
  [clang][AST] Propagate the value-dependent bit for VAArgExpr.

Fixes https://github.com/llvm/llvm-project/issues/62711

We never set the value-dependent bit for the VAArgExpr before this
patch, this was fine becase the dependent-type TypoExpr was always
resolved before checking the operands (see https://github.com/llvm/llvm-project/blob/main/clang/lib/Sema/SemaExpr.cpp#L21173-L21180)

Now we have enabled the dependence by default for C, the typo expr is
not early resolved before checking rather than delayed (share the same
codepath with C++).

The fix is to propagate the value-dependent bit for VAArgExpr where it contains
a TypoExpr, so that the AST node can be handled properly.

Differential Revision: https://reviews.llvm.org/D150955




More information about the All-commits mailing list