[all-commits] [llvm/llvm-project] 4821c1: [analyzer] Fix body farm for Obj-C++ properties

Valeriy Savchenko via All-commits all-commits at lists.llvm.org
Wed Apr 7 03:45:25 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4821c15691bab9efaef871c957a8ba73697cdda9
      https://github.com/llvm/llvm-project/commit/4821c15691bab9efaef871c957a8ba73697cdda9
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2021-04-07 (Wed, 07 Apr 2021)

  Changed paths:
    M clang/lib/Analysis/BodyFarm.cpp
    M clang/test/Analysis/properties.mm

  Log Message:
  -----------
  [analyzer] Fix body farm for Obj-C++ properties

When property is declared in a superclass (or in a protocol),
it still can be of CXXRecord type and Sema could've already
generated a body for us.  This patch joins two branches and
two ways of acquiring IVar in order to reuse the existing code.
And prevent us from generating l-value to r-value casts for
C++ types.

rdar://67416721

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




More information about the All-commits mailing list