summaryrefslogtreecommitdiff
path: root/infrastructure/m4/ac_cxx_exceptions.m4
diff options
context:
space:
mode:
Diffstat (limited to 'infrastructure/m4/ac_cxx_exceptions.m4')
-rw-r--r--infrastructure/m4/ac_cxx_exceptions.m424
1 files changed, 24 insertions, 0 deletions
diff --git a/infrastructure/m4/ac_cxx_exceptions.m4 b/infrastructure/m4/ac_cxx_exceptions.m4
new file mode 100644
index 00000000..4c3013dc
--- /dev/null
+++ b/infrastructure/m4/ac_cxx_exceptions.m4
@@ -0,0 +1,24 @@
+dnl @synopsis AC_CXX_EXCEPTIONS
+dnl
+dnl If the C++ compiler supports exceptions handling (try, throw and
+dnl catch), define HAVE_EXCEPTIONS.
+dnl
+dnl @category Cxx
+dnl @author Todd Veldhuizen
+dnl @author Luc Maisonobe <luc@spaceroots.org>
+dnl @version 2004-02-04
+dnl @license AllPermissive
+
+AC_DEFUN([AC_CXX_EXCEPTIONS],
+[AC_CACHE_CHECK(whether the compiler supports exceptions,
+ac_cv_cxx_exceptions,
+[AC_LANG_SAVE
+ AC_LANG_CPLUSPLUS
+ AC_TRY_COMPILE(,[try { throw 1; } catch (int i) { return i; }],
+ ac_cv_cxx_exceptions=yes, ac_cv_cxx_exceptions=no)
+ AC_LANG_RESTORE
+])
+if test "$ac_cv_cxx_exceptions" = yes; then
+ AC_DEFINE(HAVE_EXCEPTIONS,,[define if the compiler supports exceptions])
+fi
+])