Merge branch 'master' into systemz
[llvm/systemz.git] / autoconf / m4 / cxx_std_iterator.m4
blob38a611764c790dd8e19ee7edc01ed7fa7374505e
1 # Check for standard iterator extension.  This is modified from
2 # http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_have_ext_hash_set.html
3 AC_DEFUN([AC_CXX_HAVE_STD_ITERATOR],
4 [AC_CACHE_CHECK(whether the compiler has the standard iterator,
5 ac_cv_cxx_have_std_iterator,
6 [AC_REQUIRE([AC_CXX_NAMESPACES])
7   AC_LANG_PUSH([C++])
8   AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
9     [[#include <iterator>
10 #ifdef HAVE_NAMESPACES
11 using namespace std;
12 #endif]],
13   [[iterator<int,int,int> t; return 0;]])],
14   ac_cv_cxx_have_std_iterator=yes, 
15   ac_cv_cxx_have_std_iterator=no)
16   AC_LANG_POP([C++])
18 if test "$ac_cv_cxx_have_std_iterator" = yes
19 then
20    AC_DEFINE(HAVE_STD_ITERATOR,1,[Have std namespace iterator])
21 else
22    AC_DEFINE(HAVE_STD_ITERATOR,0,[Does not have std namespace iterator])