configure.ac (ac_cv_std_swap_in_utility): New test.

* configure.ac (ac_cv_std_swap_in_utility): New test.
	* system.h (<algorithm>): Check HAVE_SWAP_IN_UTILITY as well.
	* configure: Regenerate.
	* config.in: Regenerate.

From-SVN: r232836
This commit is contained in:
Michael Matz 2016-01-26 16:34:24 +00:00
parent 8964d2a090
commit 3dde4d658b
5 changed files with 67 additions and 10 deletions

View File

@ -1,11 +1,18 @@
2016-01-26 Michael Matz <matz@suse.de>
* configure.ac (ac_cv_std_swap_in_utility): New test.
* system.h (<algorithm>): Check HAVE_SWAP_IN_UTILITY as well.
* configure: Regenerate.
* config.in: Regenerate.
2016-01-26 Claudiu Zissulescu <claziss@synopsys.com>
* config/arc/arc.md (cstoresi4): Force operand into register.
(arcset<code>): Fix predicate.
(arcsetltu): Likewise.
(arcsetgeu): Likewise.
(arcsethi): Likewise.
(arcsetls): Likewise.
* config/arc/arc.md (cstoresi4): Force operand into register.
(arcset<code>): Fix predicate.
(arcsetltu): Likewise.
(arcsetgeu): Likewise.
(arcsethi): Likewise.
(arcsetls): Likewise.
2016-01-26 Jakub Jelinek <jakub@redhat.com>

View File

@ -1705,6 +1705,12 @@
#endif
/* Define if <utility> defines std::swap. */
#ifndef USED_FOR_TARGET
#undef HAVE_SWAP_IN_UTILITY
#endif
/* Define to 1 if you have the `sysconf' function. */
#ifndef USED_FOR_TARGET
#undef HAVE_SYSCONF
@ -1865,7 +1871,8 @@
#endif
/* Define if your assembler supports .dwsect 0xB0000 */
/* Define if your assembler supports AIX debug frame section label reference.
*/
#ifndef USED_FOR_TARGET
#undef HAVE_XCOFF_DWARF_EXTRAS
#endif

38
gcc/configure vendored
View File

@ -6534,6 +6534,40 @@ fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for std::swap in <utility>" >&5
$as_echo_n "checking for std::swap in <utility>... " >&6; }
if test "${ac_cv_std_swap_in_utility+set}" = set; then :
$as_echo_n "(cached) " >&6
else
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
#include <utility>
int
main ()
{
int a, b; std::swap(a,b);
;
return 0;
}
_ACEOF
if ac_fn_cxx_try_compile "$LINENO"; then :
ac_cv_std_swap_in_utility=yes
else
ac_cv_std_swap_in_utility=no
fi
rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_std_swap_in_utility" >&5
$as_echo "$ac_cv_std_swap_in_utility" >&6; }
if test $ac_cv_std_swap_in_utility = yes; then
$as_echo "#define HAVE_SWAP_IN_UTILITY 1" >>confdefs.h
fi
# Check whether compiler is affected by placement new aliasing bug (PR 29286).
# If the host compiler is affected by the bug, and we build with optimization
# enabled (which happens e.g. when cross-compiling), the pool allocator may
@ -18419,7 +18453,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 18422 "configure"
#line 18456 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@ -18525,7 +18559,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 18528 "configure"
#line 18562 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H

View File

@ -416,6 +416,15 @@ struct X<long long> { typedef long long t; };
]], [[X<int64_t>::t x;]])],[],[AC_MSG_ERROR([error verifying int64_t uses long long])])
fi
AC_CACHE_CHECK(for std::swap in <utility>, ac_cv_std_swap_in_utility, [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
#include <utility>
]], [[int a, b; std::swap(a,b);]])],[ac_cv_std_swap_in_utility=yes],[ac_cv_std_swap_in_utility=no])])
if test $ac_cv_std_swap_in_utility = yes; then
AC_DEFINE(HAVE_SWAP_IN_UTILITY, 1,
[Define if <utility> defines std::swap.])
fi
# Check whether compiler is affected by placement new aliasing bug (PR 29286).
# If the host compiler is affected by the bug, and we build with optimization
# enabled (which happens e.g. when cross-compiling), the pool allocator may

View File

@ -217,7 +217,7 @@ extern int errno;
#endif
#ifdef __cplusplus
#ifdef INCLUDE_ALGORITHM
#if defined (INCLUDE_ALGORITHM) || !defined (HAVE_SWAP_IN_UTILITY)
# include <algorithm>
#endif
# include <cstring>