[all-commits] [llvm/llvm-project] 8ef628: [analyzer] Structured binding to arrays

isuckatcs via All-commits all-commits at lists.llvm.org
Thu Jun 23 02:38:37 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8ef628088b54aebd4a8317ce3a0029e3283b3aa0
      https://github.com/llvm/llvm-project/commit/8ef628088b54aebd4a8317ce3a0029e3283b3aa0
  Author: isuckatcs <65320245+isuckatcs at users.noreply.github.com>
  Date:   2022-06-23 (Thu, 23 Jun 2022)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    A clang/test/Analysis/array-init-loop.cpp
    A clang/test/Analysis/uninit-structured-binding-array.cpp

  Log Message:
  -----------
  [analyzer] Structured binding to arrays

Introducing structured binding to data members and more.
To handle binding to arrays, ArrayInitLoopExpr is also
evaluated, which enables the analyzer to store information
in two more cases. These are:
  - when a lambda-expression captures an array by value
  - in the implicit copy/move constructor for a class
    with an array member

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




More information about the All-commits mailing list