00001
00002
00003
00004 #ifndef DUNE_COMMON_STDTHREAD_HH
00005 #define DUNE_COMMON_STDTHREAD_HH
00006
00007 #include <dune/common/unused.hh>
00008
00009 namespace Dune
00010 {
00011
00012
00013 void doAssertCallOnce(const char *file, int line, const char *function);
00014
00017
00035 inline void assertCallOnce(const char *file = nullptr, int line = -1,
00036 const char *function = nullptr)
00037 {
00038
00039 static const bool DUNE_UNUSED works
00040 = (doAssertCallOnce(file, line, function), true);
00041 }
00042
00045
00049 #define DUNE_ASSERT_CALL_ONCE() \
00050 ::Dune::assertCallOnce(__FILE__, __LINE__, __func__)
00051
00052 }
00053
00054 #endif // DUNE_COMMON_STDTHREAD_HH