php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #44208 preg_* UTF-8 support breaks w/ external PCRE
Submitted: 2008-02-22 08:03 UTC Modified: 2008-03-05 08:32 UTC
Votes:1
Avg. Score:5.0 ± 0.0
Reproduced:1 of 1 (100.0%)
Same Version:1 (100.0%)
Same OS:0 (0.0%)
From: martin dot adolfsson at movel dot se Assigned:
Status: Not a bug Package: PCRE related
PHP Version: 5.2.5 OS: Debian GNU/Linux 4.0
Private report: No CVE-ID: None
 [2008-02-22 08:03 UTC] martin dot adolfsson at movel dot se
Description:
------------
Attempting to use external PCRE library (7.6), configured with

  --enable-static 
  --disable-shared 
  --enable-utf8 
  --enable-unicode-properties
  --disable-cpp 

in PHP 5.2.5, configured with (among other options):

--with-pcre-regex={PATH_TO_PCRE_INSTALLATION}

Results in calls to preg_match() with /u modifier triggering an error and stating that "this version of PCRE is not compiled with PCRE_UTF8 support".

Reproduce code:
---------------
preg_match('//u', '' );

Expected result:
----------------
<empty>

Actual result:
--------------
preg_match() [<a href='function.preg-match'>function.preg-match</a>]: Compilation failed: this version of PCRE is not compiled with PCRE_UTF8 support at offset 0 in ...

Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2008-02-22 08:26 UTC] martin dot adolfsson at movel dot se
Might add some details from pcre-7.6:

pcre-7.6 configuration summary:
...
    Enable UTF-8 support ............ : yes
    Unicode properties .............. : yes
...

----[src/pcre_tables.c]--------------
#ifdef SUPPORT_UTF8

const int _pcre_utf8_table1[] =...
.....
----[src/pcre_tables.c]--------------

$ strings lib/libpcre.a | grep pcre_utf8_table1
_pcre_utf8_table1
...

So AFAIK, PCRE has been built successfully w/ UTF-8 support.
 [2008-03-02 16:22 UTC] nlopess@php.net
You've something broken on your end. I've compiled pcre with the same options as you did and it worked correctly.
 [2008-03-05 08:32 UTC] martin dot adolfsson at movel dot se
It is quite possible that you are correct, and that the problem actually is on my side, but I would like for you to consider the following:

 - All software is built on a dedicated build-host, by automated scripts.
 - No other installations of PCRE exists on the system.
 - The same build-system is building a whole bunch of other software, all without problems.

With this background, you can surely see why I feel that simply stating that the problem is on my side is unsatisfactory, when all indications show that PCRE has been build successfully with UTF-8 support.

Since this is a stripped, dedicated buildhost, I can provide you with SSH access to it if you wish to validate my claims.
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Sat Apr 20 04:01:28 2024 UTC