[PATCH] D55039: [sema] Warn of mangling change if function parameters are noexcept.
Erik Pilkington via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Thu Nov 29 14:00:35 PST 2018
erik.pilkington added a comment.
It seems like this check isn't really doing enough to catch this break in full generality. For instance, the mangling of the following changes from C++14 to 17, but isn't diagnosed here:
template <class T> struct something {};
void f(something<void (*)() noexcept>) {}
The right thing to do is probably to use a more beefy traversal here, so I guess this is a step in the right direction.
================
Comment at: lib/Sema/SemaDecl.cpp:10225
+ llvm::any_of(FPT->param_types(),
+ [&](QualType Q) { return HasNoexcept(Q); }))
return true;
----------------
Can you just make this lambda a static function? Recursive lambdas are a bit crazy :)
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D55039/new/
https://reviews.llvm.org/D55039
More information about the cfe-commits
mailing list