summaryrefslogtreecommitdiff
path: root/gcc/tsystem.h
diff options
context:
space:
mode:
authornathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-24 14:09:06 +0000
committernathan <nathan@138bc75d-0d04-0410-961f-82ee72b054a4>2005-03-24 14:09:06 +0000
commit06350693b46c6243ca2d93dfe53af5985d60c755 (patch)
tree28f4fcc6528302933788606c837a86d7af18eb57 /gcc/tsystem.h
parentab404b5bf1315dbb870529a1cd3c1fcd1d4ace0f (diff)
downloadgcc-06350693b46c6243ca2d93dfe53af5985d60c755.tar.gz
* configure.ac (enable-checking): Add 'runtime' option.
* doc/install.texi (enable-checking): Document 'runtime' checking. * tsystem.h (gcc_assert, gcc_unreachable): Define. * config.in: Regenerated. * configure: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@96990 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tsystem.h')
-rw-r--r--gcc/tsystem.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/gcc/tsystem.h b/gcc/tsystem.h
index b2b95446c6f..5342178c414 100644
--- a/gcc/tsystem.h
+++ b/gcc/tsystem.h
@@ -121,4 +121,14 @@ extern int errno;
#undef alloca
#define alloca(x) __builtin_alloca(x)
+#ifdef ENABLE_RUNTIME_CHECKING
+#define gcc_assert(EXPR) ((void)(!(EXPR) ? abort (), 0 : 0))
+#else
+/* Include EXPR, so that unused variable warnings do not occur. */
+#define gcc_assert(EXPR) ((void)(0 && (EXPR)))
+#endif
+/* Use gcc_unreachable() to mark unreachable locations (like an
+ unreachable default case of a switch. Do not use gcc_assert(0). */
+#define gcc_unreachable() (abort ())
+
#endif /* ! GCC_TSYSTEM_H */