[all-commits] [llvm/llvm-project] 809435: [Sema] Don't set BlockDecl's DoesNotEscape bit if ...

Akira Hatanaka via All-commits all-commits at lists.llvm.org
Thu Apr 29 16:20:26 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 809435e390e91355f64bee0142a65c4fe6e9f488
      https://github.com/llvm/llvm-project/commit/809435e390e91355f64bee0142a65c4fe6e9f488
  Author: Akira Hatanaka <ahatanaka at apple.com>
  Date:   2021-04-29 (Thu, 29 Apr 2021)

  Changed paths:
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprObjC.cpp
    M clang/test/SemaObjCXX/noescape.mm

  Log Message:
  -----------
  [Sema] Don't set BlockDecl's DoesNotEscape bit if the parameter type of
the function the block is passed to isn't a block pointer type

This patch fixes a bug where a block passed to a function taking a
parameter that doesn't have a block pointer type (e.g., id or reference
to a block pointer) was marked as noescape.

This partially fixes PR50043.

rdar://77030453

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




More information about the All-commits mailing list