[PATCH] D43783: [OpenCL] Remove block invoke function from emitted block literal struct
Sven van Haastregt via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Aug 17 09:26:07 PDT 2018
svenvh added a comment.
Sorry for digging up an old commit...
Apparently this broke block arguments, e.g. the following test case:
int foo(int (^ bl)(void)) {
return bl();
}
int get21() {
return foo(^{return 21;});
}
int get42() {
return foo(^{return 42;});
}
In particular, the VarDecl that `getBlockExpr()` sees doesn't have an initializer when the called block comes from an argument (causing clang to crash).
Repository:
rC Clang
https://reviews.llvm.org/D43783
More information about the cfe-commits
mailing list