summaryrefslogtreecommitdiffstats
path: root/libjava/include/java-assert.h
diff options
context:
space:
mode:
authortromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-07 14:42:40 +0000
committertromey <tromey@138bc75d-0d04-0410-961f-82ee72b054a4>1999-04-07 14:42:40 +0000
commit2c60951ba0efef23e2b765964b5dc0f1f49438a9 (patch)
treed96801a16fdf03a5682ef98730fe333a46eef944 /libjava/include/java-assert.h
parent1135eed2207f8f82c589e42ce113a1c2f0310778 (diff)
downloadppe42-gcc-2c60951ba0efef23e2b765964b5dc0f1f49438a9.tar.gz
ppe42-gcc-2c60951ba0efef23e2b765964b5dc0f1f49438a9.zip
Initial revision
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26263 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/include/java-assert.h')
-rw-r--r--libjava/include/java-assert.h38
1 files changed, 38 insertions, 0 deletions
diff --git a/libjava/include/java-assert.h b/libjava/include/java-assert.h
new file mode 100644
index 00000000000..6e942f2a705
--- /dev/null
+++ b/libjava/include/java-assert.h
@@ -0,0 +1,38 @@
+// java-assert.h - Header file holding assertion definitions. -*- c++ -*-
+
+/* Copyright (C) 1998, 1999 Cygnus Solutions
+
+ This file is part of libgcj.
+
+This software is copyrighted work licensed under the terms of the
+Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
+details. */
+
+#ifndef __JAVA_ASSERT_H__
+#define __JAVA_ASSERT_H__
+
+// This is a libgcj implementation header.
+
+void _Jv_Abort (const char *, const char *, int, const char *)
+ __attribute__ ((__noreturn__));
+
+#ifdef DEBUG
+#define _Jv_AssertDoCall(Message) _Jv_Abort (__FUNCTION__, __FILE__, __LINE__, Message)
+
+#define JvAssertMessage(Expr, Message) \
+ do { if (! (Expr)) _Jv_AssertDoCall (Message); } while (0)
+#define JvAssert(Expr) \
+ do { if (! (Expr)) _Jv_AssertDoCall (# Expr); } while (0)
+
+#define JvFail(Message) _Jv_AssertDoCall (Message)
+
+#else /* DEBUG */
+
+#define _Jv_AssertDoCall(Message)
+#define JvAssertMessage(Expr, Message)
+#define JvAssert(Expr)
+#define JvFail(Message) _Jv_Abort (0, 0, 0, Message)
+
+#endif /* not DEBUG */
+
+#endif /* __JAVA_ASSERT_H__ */
OpenPOWER on IntegriCloud