X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Fregex_internal.h;h=3616473446877403cab06096abf0150495a51894;hb=98ecea3646900dc98ece5e10364ef56647e49e2e;hp=fe37c0ba03dacdbe7e0f2d2ca42c0d2616e16a28;hpb=c4f640f1277934d02bad810d887dec6033f1ad4c;p=gnulib.git diff --git a/lib/regex_internal.h b/lib/regex_internal.h index fe37c0ba0..361647344 100644 --- a/lib/regex_internal.h +++ b/lib/regex_internal.h @@ -27,6 +27,10 @@ #include #include +#ifndef _LIBC +# include "strcase.h" +#endif + #if defined HAVE_LANGINFO_H || defined HAVE_LANGINFO_CODESET || defined _LIBC # include #endif @@ -84,11 +88,25 @@ # define RE_ENABLE_I18N #endif +#ifndef __GNUC_PREREQ +# if defined __GNUC__ && defined __GNUC_MINOR__ +# define __GNUC_PREREQ(maj, min) \ + ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) +# else +# define __GNUC_PREREQ(maj, min) 0 +# endif +#endif + +#if !__GNUC_PREREQ (3, 1) +# define always_inline +#endif + #if __GNUC__ >= 3 # define BE(expr, val) __builtin_expect (expr, val) #else # define BE(expr, val) (expr) # define inline +# define pure #endif /* Number of single byte character. */ @@ -113,7 +131,7 @@ # define attribute_hidden #endif /* not _LIBC */ -#ifdef __GNUC__ +#if __GNUC__ >= 3 # define __attribute(arg) __attribute__ (arg) #else # define __attribute(arg) @@ -833,7 +851,7 @@ bitset_not (bitset set) set[i] = ~set[i]; if (SBC_MAX % BITSET_WORD_BITS != 0) set[BITSET_WORDS - 1] = - (((bitset_word) 1 << SBC_MAX % BITSET_WORD_BITS) - 1 + ((((bitset_word) 1 << SBC_MAX % BITSET_WORD_BITS) - 1) & ~set[BITSET_WORDS - 1]); }