Mercurial > ~dholland > hg > ag > index.cgi
diff anagram/support/assert.h @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children | f5acaf0c8a29 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/anagram/support/assert.h Sat Dec 22 17:52:45 2007 -0500 @@ -0,0 +1,28 @@ +/* + * AnaGram, A System for Syntax Directed Programming + * Copyright 1993-2002 Parsifal Software. All Rights Reserved. + * Copyright 2006, 2007 David A. Holland. All Rights Reserved. + * See the file COPYING for license and usage terms. + * + * assert.h + */ + +#ifndef ASSERT_H +#define ASSERT_H + +// to prevent recursive asserting +extern int no_assertions; + +void badAssertion(const char *file, int line); +#define assert(p) \ + (((volatile int)(p)) ? (void)0 : badAssertion(__FILE__, __LINE__)) + + +/* + * This must be provided by each user interface and is NOT defined in + * assert.cpp. + */ + +void bailOut(const char *msg); + +#endif /* ASSERT_H */