diff options
author | Nico Weber <nicolasweber@gmx.de> | 2015-03-09 04:27:56 +0000 |
---|---|---|
committer | Nico Weber <nicolasweber@gmx.de> | 2015-03-09 04:27:56 +0000 |
commit | eb0cfb5ab0bcd3c794aaf1425b38ef165d64eabb (patch) | |
tree | f11cdd887e6b2a8feae59ebb743cd3dbe48393f4 /llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp | |
parent | 5768e9fde95e03a0fc5388a7814670cee1ae21e9 (diff) | |
download | bcm5719-llvm-eb0cfb5ab0bcd3c794aaf1425b38ef165d64eabb.tar.gz bcm5719-llvm-eb0cfb5ab0bcd3c794aaf1425b38ef165d64eabb.zip |
Warn when jumping out of a __finally block via goto.
This only warns on direct gotos and indirect gotos with a unique label
(`goto *&&label;`). Jumping out ith a true indirect goto is already an error.
This isn't O(1), but goto statements are less common than continue, break, and
return. Also, the GetDeepestCommonScope() call in the same function does the
same amount of work, so this isn't worse than what's there in a complexity
sense, and it should be pretty fast in practice.
This is the last piece that was missing in r231623.
llvm-svn: 231628
Diffstat (limited to 'llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp')
0 files changed, 0 insertions, 0 deletions