> > - (s = rx->startp[paren]) != -1 && > > - (t = rx->endp[paren]) != -1) > > + (s = get_match_node(rx)->startp[paren]) != -1 && > > + (t = get_match_node(rx)->endp[paren]) != -1) > > Nope. You do not want to make function calls in this tight code. It is not a function call. It is a compile-time macro: > > +#ifdef USE_THREADS > > +# define get_match_node(regexp) (&(PL_matchvars[regexp->regexp_index])) > > +#else > > +# define get_match_node(regexp) (regexp) > > +#endif > Did not look any further. I guess not.Thread Previous | Thread Next