[all-commits] [llvm/llvm-project] a11e51: [analyzer] Track trivial copy/move constructors an...

isuckatcs via All-commits all-commits at lists.llvm.org
Mon Sep 5 08:06:45 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a11e51e91f73e413eb044bc0b2f2e205735618d7
      https://github.com/llvm/llvm-project/commit/a11e51e91f73e413eb044bc0b2f2e205735618d7
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2022-09-05 (Mon, 05 Sep 2022)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    A clang/test/Analysis/ctor-bug-path.cpp

  Log Message:
  -----------
  [analyzer] Track trivial copy/move constructors and initializer lists in the BugReporter

If an object has a trivial copy/move constructor, it's not inlined
on invocation but a trivial copy is performed instead. This patch
handles trivial copies in the bug reporter by matching the field
regions of the 2 objects involved in the copy/move construction,
and tracking the appropriate region further. This patch also
introduces some support for tracking values in initializer lists.

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




More information about the All-commits mailing list