X-Git-Url: https://perl5.git.perl.org/perl5.git/blobdiff_plain/27fe105ac377b5c29a778e3ff9a9f13711204da2..255a3e7b2026cd461a60bdc2ed8686b42847a3a0:/regexec.c diff --git a/regexec.c b/regexec.c index 0c549df..cdaa95c 100644 --- a/regexec.c +++ b/regexec.c @@ -5232,6 +5232,13 @@ S_regmatch(pTHX_ regmatch_info *reginfo, char *startpos, regnode *prog) bool is_utf8_pat = reginfo->is_utf8_pat; bool match = FALSE; +/* Solaris Studio 12.3 messes up fetching PL_charclass['\n'] */ +#if (defined(__SUNPRO_C) && (__SUNPRO_C == 0x5120) && defined(__x86_64) && defined(USE_64_BIT_ALL)) +# define SOLARIS_BAD_OPTIMIZER + const U32 *pl_charclass_dup = PL_charclass; +# define PL_charclass pl_charclass_dup +#endif + #ifdef DEBUGGING GET_RE_DEBUG_FLAGS_DECL; #endif @@ -8316,6 +8323,9 @@ NULL /* NOTREACHED */ } } +#ifdef SOLARIS_BAD_OPTIMIZER +# undef PL_charclass +#endif /* * We get here only if there's trouble -- normally "case END" is