add EX__MAX to represent top value listed
[unix-history] / usr / src / include / assert.h
index 5e567b8..a8cee82 100644 (file)
@@ -1,9 +1,23 @@
-/*     assert.h        4.1     83/05/03        */
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * %sccs.include.redist.c%
+ *
+ *     @(#)assert.h    4.3 (Berkeley) %G%
+ */
 
 
-# ifndef NDEBUG
-# define _assert(ex) {if (!(ex)){fprintf(stderr,"Assertion failed: file %s, line %d\n", __FILE__, __LINE__);exit(1);}}
-# define assert(ex) {if (!(ex)){fprintf(stderr,"Assertion failed: file %s, line %d\n", __FILE__, __LINE__);exit(1);}}
-# else
-# define _assert(ex) ;
-# define assert(ex) ;
-# endif
+#ifdef NDEBUG
+#define        assert
+#define        _assert
+#else
+#define        assert(expression) { \
+       if (!(expression)) { \
+               (void)fprintf(stderr, \
+                   "assertion \"%s\" failed: file \"%s\", line %d\n", \
+                   "expression", __FILE__, __LINE__); \
+               exit(2); \
+       } \
+}
+#define        _assert(expression)     assert(expression)
+#endif