Viskores
1.0
|
Go to the source code of this file.
Macros | |
#define | VISKORES_UNREACHABLE(msg) |
VISKORES_UNREACHABLE is similar to VTK_ASSUME, with the significant difference that it is not conditional. More... | |
#define | VISKORES_UNREACHABLE_IMPL() (void)0 |
#define | VISKORES_UNREACHABLE_PRINT(msg) |
#define | VISKORES_UNREACHABLE_ABORT() abort() |
#define VISKORES_UNREACHABLE | ( | msg | ) |
VISKORES_UNREACHABLE is similar to VTK_ASSUME, with the significant difference that it is not conditional.
Control should never reach a path containing a VISKORES_UNREACHABLE statement under any circumstances.
If assertions are enabled (e.g. neither NDEBUG nor VISKORES_NO_ASSERT is defined), the following steps are taken:
This allows bad code paths to be identified during development and debugging.
If assertions are disabled and the compiler has some sort of 'unreachable' intrinsic used to provide optimization hints, the intrinsic is used to notify the compiler that this is a dead code path.
#define VISKORES_UNREACHABLE_ABORT | ( | ) | abort() |
#define VISKORES_UNREACHABLE_IMPL | ( | ) | (void)0 |
#define VISKORES_UNREACHABLE_PRINT | ( | msg | ) |