summaryrefslogtreecommitdiff
path: root/m4/restrict.m4
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2003-08-07 09:13:50 +0000
committerJim Meyering <jim@meyering.net>2003-08-07 09:13:50 +0000
commita103bb4a088cf696cb9ac96db8b3d53d06b63f64 (patch)
treedd671183da5a870441b9080d929a04c9ece29656 /m4/restrict.m4
parente38f0569b3119ebe9e06a7a8f07c1d3a4645c388 (diff)
downloadcoreutils-a103bb4a088cf696cb9ac96db8b3d53d06b63f64.tar.xz
Merge with gnulib.
(gl_C_RESTRICT): Renamed from ACX_C_RESTRICT. All uses changed. Rename cache vars to gl_cv_*. Incorporate latest Autoconf CVS tricks.
Diffstat (limited to 'm4/restrict.m4')
-rw-r--r--m4/restrict.m437
1 files changed, 21 insertions, 16 deletions
diff --git a/m4/restrict.m4 b/m4/restrict.m4
index ca4f70f0b..634293892 100644
--- a/m4/restrict.m4
+++ b/m4/restrict.m4
@@ -1,28 +1,33 @@
-#serial 1001
-dnl based on acx_restrict.m4, from the GNU Autoconf Macro Archive at:
-dnl http://www.gnu.org/software/ac-archive/htmldoc/acx_restrict.html
+#serial 1002
+# This macro can be removed once we can rely on Autoconf 2.57a or later,
+# since we can then use its AC_C_RESTRICT.
+# gl_C_RESTRICT
+# --------------
# Determine whether the C/C++ compiler supports the "restrict" keyword
# introduced in ANSI C99, or an equivalent. Do nothing if the compiler
-# accepts it. Otherwise, if the compiler supports an equivalent (like
-# gcc's __restrict__) define "restrict" to be that. Otherwise, define
-# "restrict" to be empty.
-
-AC_DEFUN([ACX_C_RESTRICT],
-[AC_CACHE_CHECK([for C/C++ restrict keyword], acx_cv_c_restrict,
- [acx_cv_c_restrict=no
- # Try the official restrict keyword, then gcc's __restrict__.
- for acx_kw in restrict __restrict__; do
+# accepts it. Otherwise, if the compiler supports an equivalent,
+# define "restrict" to be that. Here are some variants:
+# - GCC supports both __restrict and __restrict__
+# - older DEC Alpha C compilers support only __restrict
+# - _Restrict is the only spelling accepted by Sun WorkShop 6 update 2 C
+# Otherwise, define "restrict" to be empty.
+AC_DEFUN([gl_C_RESTRICT],
+[AC_CACHE_CHECK([for C/C++ restrict keyword], gl_cv_c_restrict,
+ [gl_cv_c_restrict=no
+ # Try the official restrict keyword, then gcc's __restrict, and
+ # the less common variants.
+ for ac_kw in restrict __restrict __restrict__ _Restrict; do
AC_COMPILE_IFELSE([AC_LANG_SOURCE(
- [float * $acx_kw x;])],
- [acx_cv_c_restrict=$acx_kw; break])
+ [float * $ac_kw x;])],
+ [gl_cv_c_restrict=$ac_kw; break])
done
])
- case $acx_cv_c_restrict in
+ case $gl_cv_c_restrict in
restrict) ;;
no) AC_DEFINE(restrict,,
[Define to equivalent of C99 restrict keyword, or to nothing if this
is not supported. Do not define if restrict is supported directly.]) ;;
- *) AC_DEFINE_UNQUOTED(restrict, $acx_cv_c_restrict) ;;
+ *) AC_DEFINE_UNQUOTED(restrict, $gl_cv_c_restrict) ;;
esac
])