tlds
Transactional Operations for Linked Data Structures
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
macros.hpp
Go to the documentation of this file.
1 /**
2  * Copyright (C) 2011
3  * University of Rochester Department of Computer Science
4  * and
5  * Lehigh University Department of Computer Science and Engineering
6  *
7  * License: Modified BSD
8  * Please see the file LICENSE.RSTM for licensing information
9  */
10 
11 /* macros.hpp
12  *
13  * Macros used in the mesh app.
14  */
15 
16 #ifndef MACROS_HPP__
17 #define MACROS_HPP__
18 
19 #include <iostream>
20 #include <string.h> // for strerror()
21 #include <cassert>
22 
23 // for syscalls:
24 //
25 #define VERIFY(E) \
26  { \
27  int stat = (E); \
28  if (stat != 0) { \
29  std::cerr << __FILE__ << "[" << __LINE__ << "] bad return(" \
30  << stat << "): " << strerror(stat) << "\n" << std::flush; \
31  assert(false); \
32  } \
33  }
34 
35 #endif // MACROS_HPP__