| 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.