diff options
Diffstat (limited to 'docs/clang-tidy/checks/openmp-exception-escape.rst')
-rw-r--r-- | docs/clang-tidy/checks/openmp-exception-escape.rst | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/docs/clang-tidy/checks/openmp-exception-escape.rst b/docs/clang-tidy/checks/openmp-exception-escape.rst new file mode 100644 index 00000000..d85e4fd5 --- /dev/null +++ b/docs/clang-tidy/checks/openmp-exception-escape.rst @@ -0,0 +1,25 @@ +.. title:: clang-tidy - openmp-exception-escape + +openmp-exception-escape +======================= + +Analyzes OpenMP Structured Blocks and checks that no exception escapes +out of the Structured Block it was thrown in. + +As per the OpenMP specification, a structured block is an executable statement, +possibly compound, with a single entry at the top and a single exit at the +bottom. Which means, ``throw`` may not be used to to 'exit' out of the +structured block. If an exception is not caught in the same structured block +it was thrown in, the behaviour is undefined. + +FIXME: this check does not model SEH, ``setjmp``/``longjmp``. + +WARNING! This check may be expensive on large source files. + +Options +------- + +.. option:: IgnoredExceptions + + Comma-separated list containing type names which are not counted as thrown + exceptions in the check. Default value is an empty string. |