| dnl @synopsis AC_CXX_HAVE_NAMESPACES |
| dnl |
| dnl If the compiler can prevent names clashes using namespaces, define |
| dnl HAVE_NAMESPACES. |
| 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_HAVE_NAMESPACES], |
| [AC_CACHE_CHECK(whether the compiler implements namespaces, |
| ac_cv_cxx_have_namespaces, |
| [AC_LANG_SAVE |
| AC_LANG_CPLUSPLUS |
| AC_TRY_COMPILE([namespace Outer { namespace Inner { int i = 0; }}], |
| [using namespace Outer::Inner; return i;], |
| ac_cv_cxx_have_namespaces=yes, ac_cv_cxx_have_namespaces=no) |
| AC_LANG_RESTORE |
| ]) |
| if test "$ac_cv_cxx_have_namespaces" = yes; then |
| AC_DEFINE(HAVE_NAMESPACES,,[define if the compiler implements namespaces]) |
| fi |
| ]) |