FE 0.17.1
Fast, Effecient FrontEnds
Loading...
Searching...
No Matches
assert.h
Go to the documentation of this file.
1#pragma once
2
3#include <cassert>
4
5#ifdef _MSC_VER
6# include <intrin.h>
7#endif
8
9namespace fe {
10
11/// Raise a breakpoint in the debugger.
12inline void breakpoint() {
13#if defined(_MSC_VER)
14 __debugbreak();
15#elif defined(__clang__)
16 __builtin_debugtrap();
17#elif defined(__x86_64__) || defined(__i386__)
18 asm("int3");
19#else
20 __builtin_trap();
21#endif
22}
23
24} // namespace fe
25
26#ifndef NDEBUG
27# define assert_unused(x) assert(x)
28#else
29# define assert_unused(x) ((void)(0 && (x)))
30#endif
Definition algo.h:17
void breakpoint()
Raise a breakpoint in the debugger.
Definition assert.h:12