Download M4 Source | Macro History | Category Index |
AC_CXX_EXPLICIT
If the compiler can be asked to prevent using implicitly one argument constructors as converting constructors with the explicit keyword, define HAVE_EXPLICIT.
Todd Veldhuizen and Luc Maisonobe <luc@spaceroots.org>.
2004-02-04
AC_DEFUN([AC_CXX_EXPLICIT], [AC_CACHE_CHECK(whether the compiler supports the explicit keyword, ac_cv_cxx_explicit, [AC_LANG_SAVE AC_LANG_CPLUSPLUS AC_TRY_COMPILE([class A{public:explicit A(double){}};], [double c = 5.0;A x(c);return 0;], ac_cv_cxx_explicit=yes, ac_cv_cxx_explicit=no) AC_LANG_RESTORE ]) if test "$ac_cv_cxx_explicit" = yes; then AC_DEFINE(HAVE_EXPLICIT,,[define if the compiler supports the explicit keyword]) fi ])
Copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved.