aboutsummaryrefslogtreecommitdiff
path: root/include/xregex2.h
diff options
context:
space:
mode:
authorDJ Delorie <dj@redhat.com>2002-04-17 01:03:04 +0000
committerDJ Delorie <dj@redhat.com>2002-04-17 01:03:04 +0000
commit38b581ae41c98f8aba7b188f8ec8c1ebcef164d3 (patch)
tree3200497259fe1f0f69eff1623fcde0dc3e32574b /include/xregex2.h
parent6338913390bd01783623c835e5b1d72791768afe (diff)
downloadfsf-binutils-gdb-38b581ae41c98f8aba7b188f8ec8c1ebcef164d3.zip
fsf-binutils-gdb-38b581ae41c98f8aba7b188f8ec8c1ebcef164d3.tar.gz
fsf-binutils-gdb-38b581ae41c98f8aba7b188f8ec8c1ebcef164d3.tar.bz2
merge from gcc
Diffstat (limited to 'include/xregex2.h')
-rw-r--r--include/xregex2.h14
1 files changed, 10 insertions, 4 deletions
diff --git a/include/xregex2.h b/include/xregex2.h
index b9c2d97..2991daf 100644
--- a/include/xregex2.h
+++ b/include/xregex2.h
@@ -529,10 +529,16 @@ extern int re_exec _RE_ARGS ((const char *));
# endif
# endif
#endif
-/* For now unconditionally define __restrict_arr to expand to nothing.
- Ideally we would have a test for the compiler which allows defining
- it to restrict. */
-#define __restrict_arr
+
+/* GCC 3.1 and later support declaring arrays as non-overlapping
+ using the syntax array_name[restrict] */
+#ifndef __restrict_arr
+# if ! (3 < __GNUC__ || (3 == __GNUC__ && 1 <= __GNUC_MINOR__)) || defined (__GNUG__)
+# define __restrict_arr
+# else
+# define __restrict_arr __restrict
+# endif
+#endif
/* POSIX compatibility. */
extern int regcomp _RE_ARGS ((regex_t *__restrict __preg,