[all-commits] [llvm/llvm-project] f9bd62: [clang-tidy] Improve `ExceptionSpecAnalyzer`s hand...

AMS21 via All-commits all-commits at lists.llvm.org
Mon Oct 9 07:41:46 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: f9bd62fb8f666e818a4bf0f0dbcb77a0a223c97a
      https://github.com/llvm/llvm-project/commit/f9bd62fb8f666e818a4bf0f0dbcb77a0a223c97a
  Author: AMS21 <AMS21.github at gmail.com>
  Date:   2023-10-09 (Mon, 09 Oct 2023)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-swap.cpp

  Log Message:
  -----------
  [clang-tidy] Improve `ExceptionSpecAnalyzer`s handling of conditional noexcept expressions (#68359)

The previous code was pretty messy and treated value dependant
expressions which could not be evaluated the same as if they evaluted to
`false`. Which was obviously not correct.

We now check if we can evaluate the dependant expressions and if not we
truthfully return that we don't know if the function is declared as
`noexcept` or not.

This fixes #68101




More information about the All-commits mailing list