[all-commits] [llvm/llvm-project] bb764e: [Clang] Fix CXXRewrittenBinaryOperator::getDecompo...

Shafik Yaghmour via All-commits all-commits at lists.llvm.org
Mon Sep 25 13:08:24 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: bb764eccf8053244d64270df29c2e0bd3606f6c0
      https://github.com/llvm/llvm-project/commit/bb764eccf8053244d64270df29c2e0bd3606f6c0
  Author: Shafik Yaghmour <shafik at users.noreply.github.com>
  Date:   2023-09-25 (Mon, 25 Sep 2023)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/ExprCXX.cpp
    M clang/test/SemaCXX/compare-cxx2a.cpp

  Log Message:
  -----------
  [Clang] Fix CXXRewrittenBinaryOperator::getDecomposedForm to handle case when spaceship operator returns comparison category by reference (#66270)

Currently CXXRewrittenBinaryOperator::getDecomposedForm(...) may crash
if the spaceship operator returns a comparison category by reference. This
because IgnoreImplicitAsWritten() does not look through CXXConstructExpr. The
fix is to use IgnoreUnlessSpelledInSource() which will look though
CXXConstructExpr.

This fixes: https://github.com/llvm/llvm-project/issues/64162




More information about the All-commits mailing list