From e180a4085d8d2f82a05f037e465708cfc16bd2bf Mon Sep 17 00:00:00 2001 From: Gustavo Zacarias Date: Tue, 14 Jun 2016 20:31:12 -0300 Subject: [PATCH] Kill compatibility bits Kill ABI compatibility bits, we don't need them. Fixes build failures on non-ELF targets. Signed-off-by: Gustavo Zacarias [Fabrice: update for 8.44] Signed-off-by: Fabrice Fontaine --- pcrecpp.cc | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/pcrecpp.cc b/pcrecpp.cc index d09c9ab..6910db0 100644 --- a/pcrecpp.cc +++ b/pcrecpp.cc @@ -58,23 +58,6 @@ static const int kVecSize = (1 + kMaxArgs) * 3; // results + PCRE workspace // Special object that stands-in for no argument Arg RE::no_arg((void*)NULL); -// This is for ABI compatibility with old versions of pcre (pre-7.6), -// which defined a global no_arg variable instead of putting it in the -// RE class. This works on GCC >= 3, at least. It definitely works -// for ELF, but may not for other object formats (Mach-O, for -// instance, does not support aliases.) We could probably have a more -// inclusive test if we ever needed it. (Note that not only the -// __attribute__ syntax, but also __USER_LABEL_PREFIX__, are -// gnu-specific.) -#if defined(__GNUC__) && __GNUC__ >= 3 && defined(__ELF__) \ - && !defined(__INTEL_COMPILER) && !defined(__LCC__) -# define ULP_AS_STRING(x) ULP_AS_STRING_INTERNAL(x) -# define ULP_AS_STRING_INTERNAL(x) #x -# define USER_LABEL_PREFIX_STR ULP_AS_STRING(__USER_LABEL_PREFIX__) -extern Arg no_arg - __attribute__((alias(USER_LABEL_PREFIX_STR "_ZN7pcrecpp2RE6no_argE"))); -#endif - // If a regular expression has no error, its error_ field points here static const string empty_string; -- 2.7.3