[pcre-dev] Win32 JIT Access Violation

Top Page

Reply to this message
Author: Ralf Junker
To: pcre-dev@exim.org
Subject: [pcre-dev] Win32 JIT Access Violation
I am receiving an access violation running pcre2test.exe (SVN 1184)
against testinput2 on Win32. It is caused by the pattern in the attached

Command line:

pcre2test.exe -jit -q -8 test.txt

The AV triggers in sljitNativeX86_common.c, line 459:

     if (type == SLJIT_JUMP) {
         if (short_jump)
             *code_ptr++ = JMP_i8;
/* AV -> */ *code_ptr++ = JMP_i32; /* <- AV */

Only Win32 JIT is affected. The compiler is C++Builder.

Win64 has no issues, neither does non-JIT mode.

Could anyone reproduce my findings?

Many thanks,

# This set of tests is not Perl-compatible. It checks on special features
# of PCRE2's API, error diagnostics, and the compiled code of some patterns.
# It also checks the non-Perl syntax that PCRE2 supports (Python, .NET,
# Oniguruma). There are also some tests where PCRE2 and Perl differ,
# either because PCRE2 can't be compatible, or there is a possible Perl
# bug.

# NOTE: This is a non-UTF set of tests. When UTF support is needed, use
# test 5.

#newline_default lf any anycrlf