On Wed, 10 Dec 2014, Ralf Junker wrote:
> In contrast to the old pcre_exec(), the new pcre2_match() no longer accepts PCRE2_NO_START_OPTIMIZE but returns PCRE2_ERROR_BADOPTION instead.
>
> pcre2.h.in documents PCRE2_NO_START_OPTIMIZE as a valid option for pcre2_match():
>
> #define PCRE2_NO_START_OPTIMIZE 0x00008000u /* J M D */
>
> On the other hand, it is missing from the options listed in pcre2_match.html.
>
> What is the correct documentation / behavior? And why the change, if so?
The documentation and behaviour is correct (that is, what is intended).
The reason for the change is that this option affects the behaviour of
the JIT compiler. In PCRE1, if you set it for pcre_exec(), it disables
JIT execution. We thought it better not to continue with this trap.