aboutsummaryrefslogtreecommitdiff
path: root/gcc/assert.h
diff options
context:
space:
mode:
authorRichard Stallman <rms@gnu.org>1992-06-08 21:12:58 +0000
committerRichard Stallman <rms@gnu.org>1992-06-08 21:12:58 +0000
commitb076a285a49898add7a3549c16b1bba2bb875060 (patch)
tree21e6490717a162645e050e15baf822932c9f48e1 /gcc/assert.h
parent6196c52839cafe3db7d503401283abf379eb2f88 (diff)
downloadgcc-b076a285a49898add7a3549c16b1bba2bb875060.zip
gcc-b076a285a49898add7a3549c16b1bba2bb875060.tar.gz
gcc-b076a285a49898add7a3549c16b1bba2bb875060.tar.bz2
*** empty log message ***
From-SVN: r1183
Diffstat (limited to 'gcc/assert.h')
-rw-r--r--gcc/assert.h12
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/assert.h b/gcc/assert.h
index 59aafd9..c7c9183 100644
--- a/gcc/assert.h
+++ b/gcc/assert.h
@@ -18,10 +18,16 @@
#else
-#ifdef __STDC__
+#if defined(__STDC__) || defined (__cplusplus)
/* Defined in libgcc.a */
+#ifdef __cplusplus
+extern "C" {
extern void __eprintf (const char *, const char *, int, const char *);
+}
+#else
+extern void __eprintf (const char *, const char *, int, const char *);
+#endif
#define assert(expression) \
((void) ((expression) ? 0 : __assert (#expression, __FILE__, __LINE__)))
@@ -30,7 +36,7 @@ extern void __eprintf (const char *, const char *, int, const char *);
(__eprintf ("%s:%u: failed assertion `%s'\n", \
file, line, expression), 0)
-#else /* no __STDC__; i.e. -traditional. */
+#else /* no __STDC__ and not C++; i.e. -traditional. */
extern void __eprintf (); /* Defined in libgcc.a */
@@ -41,6 +47,6 @@ extern void __eprintf (); /* Defined in libgcc.a */
(__eprintf ("%s:%u: failed assertion `%s'\n", \
file, lineno, "expression"), 0)
-#endif /* no __STDC__; i.e. -traditional. */
+#endif /* no __STDC__ and not C++; i.e. -traditional. */
#endif /* no __GNU__; i.e., /bin/cc. */
#endif