source: vendor/gcc/3.2.2/libjava/include/java-assert.h

Last change on this file was 2, checked in by bird, 22 years ago

Initial revision

  • Property cvs2svn:cvs-rev set to 1.1
  • Property svn:eol-style set to native
  • Property svn:executable set to *
File size: 1.0 KB
Line 
1// java-assert.h - Header file holding assertion definitions. -*- c++ -*-
2
3/* Copyright (C) 1998, 1999 Free Software Foundation
4
5 This file is part of libgcj.
6
7This software is copyrighted work licensed under the terms of the
8Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
9details. */
10
11#ifndef __JAVA_ASSERT_H__
12#define __JAVA_ASSERT_H__
13
14// This is a libgcj implementation header.
15
16void _Jv_Abort (const char *, const char *, int, const char *)
17 __attribute__ ((__noreturn__));
18
19#ifdef DEBUG
20#define _Jv_AssertDoCall(Message) _Jv_Abort (__FUNCTION__, __FILE__, __LINE__, Message)
21
22#define JvAssertMessage(Expr, Message) \
23 do { if (! (Expr)) _Jv_AssertDoCall (Message); } while (0)
24#define JvAssert(Expr) \
25 do { if (! (Expr)) _Jv_AssertDoCall (# Expr); } while (0)
26
27#define JvFail(Message) _Jv_AssertDoCall (Message)
28
29#else /* DEBUG */
30
31#define _Jv_AssertDoCall(Message)
32#define JvAssertMessage(Expr, Message)
33#define JvAssert(Expr)
34#define JvFail(Message) _Jv_Abort (0, 0, 0, Message)
35
36#endif /* not DEBUG */
37
38#endif /* __JAVA_ASSERT_H__ */
Note: See TracBrowser for help on using the repository browser.