diff options
author | Akira Hatanaka <ahatanaka@apple.com> | 2018-03-02 01:53:15 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@apple.com> | 2018-03-02 01:53:15 +0000 |
commit | 627586b8508e5f0675eb55dcbb5133bde4b8ad3c (patch) | |
tree | e51428049104f8757201deb2e6604d923f5d070c /clang/lib/Sema/SemaPseudoObject.cpp | |
parent | 7d0f5ab6aa061ebe04208fd6fc90ba5cf4815514 (diff) | |
download | llvm-627586b8508e5f0675eb55dcbb5133bde4b8ad3c.zip llvm-627586b8508e5f0675eb55dcbb5133bde4b8ad3c.tar.gz llvm-627586b8508e5f0675eb55dcbb5133bde4b8ad3c.tar.bz2 |
Add an option to disable tail-call optimization for escaping blocks.
This makes it easier to debug crashes and hangs in block functions since
users can easily find out where the block is called from. The option
doesn't disable tail-calls from non-escaping blocks since non-escaping
blocks are not as hard to debug as escaping blocks.
rdar://problem/35758207
Differential Revision: https://reviews.llvm.org/D43841
llvm-svn: 326530
Diffstat (limited to 'clang/lib/Sema/SemaPseudoObject.cpp')
-rw-r--r-- | clang/lib/Sema/SemaPseudoObject.cpp | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/clang/lib/Sema/SemaPseudoObject.cpp b/clang/lib/Sema/SemaPseudoObject.cpp index f09a6f7..5fa4342 100644 --- a/clang/lib/Sema/SemaPseudoObject.cpp +++ b/clang/lib/Sema/SemaPseudoObject.cpp @@ -993,6 +993,7 @@ ObjCSubscriptOpBuilder::buildAssignmentOperation(Scope *Sc, SourceLocation opcLoc, BinaryOperatorKind opcode, Expr *LHS, Expr *RHS) { + assert(false); assert(BinaryOperator::isAssignmentOp(opcode)); // There must be a method to do the Index'ed assignment. if (!findAtIndexSetter()) |