[all-commits] [llvm/llvm-project] c7ed4f: [libTooling] Change `access` stencil to recognize ...

Yitzhak Mandelbaum via All-commits all-commits at lists.llvm.org
Wed Jun 16 13:34:33 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: c7ed4fe56e0a6c664c5fb5dedaedb426abe7224d
      https://github.com/llvm/llvm-project/commit/c7ed4fe56e0a6c664c5fb5dedaedb426abe7224d
  Author: Yitzhak Mandelbaum <yitzhakm at google.com>
  Date:   2021-06-16 (Wed, 16 Jun 2021)

  Changed paths:
    M clang/lib/Tooling/Transformer/Stencil.cpp
    M clang/unittests/Tooling/StencilTest.cpp

  Log Message:
  -----------
  [libTooling] Change `access` stencil to recognize use of `operator*`.

Currently, `access` doesn't recognize a dereferenced smart pointer. So,
`access(e, "field")` where `e = *x`, yields:
* `x->field`, for normal-pointer x,
* `(*x).field`, for smart-pointer x.

This patch normalizes handling of smart pointer to match normal pointer, when
the smart pointer type supports `->`.

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




More information about the All-commits mailing list