Changes in uspace/lib/cpp/include/cassert [7dcce0a:7bbf91e] in mainline
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/lib/cpp/include/cassert
r7dcce0a r7bbf91e 1 1 /* 2 * Copyright (c) 201 9Jaroslav Jindrak2 * Copyright (c) 2018 Jaroslav Jindrak 3 3 * All rights reserved. 4 4 * … … 30 30 #define LIBCPP_CASSERT 31 31 32 #include <__bits/common.hpp> 32 33 33 extern "C" { 34 #include <assert.h> 34 namespace std::hel 35 { 36 extern "C" { 37 #include <assert.h> 38 } 35 39 } 36 40 37 // TODO: For some reason, this function isn't visible (maybe the 38 // noreturn attribute?), adding a redeclaration here for the 39 // time being. 41 namespace std 42 { 43 // Note: The only thing imported is assert 44 // and that is a macro. 45 } 40 46 41 extern void __helenos_assert_abort(const char *, const char *, unsigned int); 42 43 #define __unimplemented() assert(!"Not implemented!") 47 /** 48 * We need to fix the assert macro because it uses 49 * a non-standard function that we have in the 50 * std::hel namespace. 51 */ 52 #undef assert 53 #define assert(expr) \ 54 do { \ 55 if (!(expr)) \ 56 std::hel::assert_abort(#expr, __FILE__, __LINE__); \ 57 } while (0) 44 58 45 59 #endif
Note:
See TracChangeset
for help on using the changeset viewer.