Diff for /embedaddon/pcre/testdata/testoutput14 between versions 1.1.1.1 and 1.1.1.2

version 1.1.1.1, 2012/02/21 23:05:52 version 1.1.1.2, 2012/02/21 23:50:25
Line 1 Line 1
/-- This test is run only when JIT support is available. It checks for a/-- This set of tests is run only with the 8-bit library. It starts with all
successful and an unsuccessful JIT compile and save and restore behaviour,    the tests of the POSIX interface, because that is supported only with the
and a couple of things that are different with JIT. --/    8-bit library. --/
   
/abc/S+I/abc/P
     abc
  0: abc
     *** Failers
 No match: POSIX code 17: match failed
 
 /^abc|def/P
     abcdef
  0: abc
     abcdef\B
  0: def
 
 /.*((abc)$|(def))/P
     defabc
  0: defabc
  1: abc
  2: abc
     \Zdefabc
  0: def
  1: def
  3: def
 
 /the quick brown fox/P
     the quick brown fox
  0: the quick brown fox
     *** Failers
 No match: POSIX code 17: match failed
     The Quick Brown Fox
 No match: POSIX code 17: match failed
 
 /the quick brown fox/Pi
     the quick brown fox
  0: the quick brown fox
     The Quick Brown Fox
  0: The Quick Brown Fox
 
 /abc.def/P
     *** Failers
 No match: POSIX code 17: match failed
     abc\ndef
 No match: POSIX code 17: match failed
 
 /abc$/P
     abc
  0: abc
     abc\n
  0: abc
 
 /(abc)\2/P
 Failed: POSIX code 15: bad back reference at offset 7     
 
 /(abc\1)/P
     abc
 No match: POSIX code 17: match failed
 
 /a*(b+)(z)(z)/P
     aaaabbbbzzzz
  0: aaaabbbbzz
  1: bbbb
  2: z
  3: z
     aaaabbbbzzzz\O0
     aaaabbbbzzzz\O1
  0: aaaabbbbzz
     aaaabbbbzzzz\O2
  0: aaaabbbbzz
  1: bbbb
     aaaabbbbzzzz\O3
  0: aaaabbbbzz
  1: bbbb
  2: z
     aaaabbbbzzzz\O4
  0: aaaabbbbzz
  1: bbbb
  2: z
  3: z
     aaaabbbbzzzz\O5
  0: aaaabbbbzz
  1: bbbb
  2: z
  3: z
 
 /ab.cd/P
     ab-cd
  0: ab-cd
     ab=cd
  0: ab=cd
     ** Failers
 No match: POSIX code 17: match failed
     ab\ncd
 No match: POSIX code 17: match failed
 
 /ab.cd/Ps
     ab-cd
  0: ab-cd
     ab=cd
  0: ab=cd
     ab\ncd
  0: ab\x0acd
 
 /a(b)c/PN
     abc
 Matched with REG_NOSUB
 
 /a(?P<name>b)c/PN
     abc
 Matched with REG_NOSUB
 
 /a?|b?/P
     abc
  0: a
     ** Failers
  0: 
     ddd\N   
 No match: POSIX code 17: match failed
 
 /\w+A/P
    CDAAAAB 
  0: CDAAAA
 
 /\w+A/PU
    CDAAAAB 
  0: CDA
    
 /\Biss\B/I+P
     Mississippi
  0: iss
  0+ issippi
 
 /abc/\P
 Failed: POSIX code 9: bad escape sequence at offset 4     
 
 /-- End of POSIX tests --/ 
 
 /a\Cb/
     aXb
  0: aXb
     a\nb
  0: a\x0ab
     ** Failers (too big char) 
 No match
     A\x{123}B 
 ** Character \x{123} is greater than 255 and UTF-8 mode is not enabled.
 ** Truncation will probably give the wrong result.
 No match
   
 /\x{100}/I
 Failed: character value in \x{...} sequence is too large at offset 6
 
 /  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*                          # optional leading comment
 (?:    (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 )                    # initial word
 (?:  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 )  )* # further okay, if led by a period
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  @  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*    (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                           # initial subdomain
 (?:                                  #
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.                        # if led by a period...
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                     #   ...further okay
 )*
 # address
 |                     #  or
 (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 )             # one word, optionally followed by....
 (?:
 [^()<>@,;:".\\\[\]\x80-\xff\000-\010\012-\037]  |  # atom and space parts, or...
 \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)       |  # comments, or...
 
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 # quoted strings
 )*
 <  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*                     # leading <
 (?:  @  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*    (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                           # initial subdomain
 (?:                                  #
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.                        # if led by a period...
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                     #   ...further okay
 )*
 
 (?:  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  ,  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  @  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*    (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                           # initial subdomain
 (?:                                  #
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.                        # if led by a period...
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                     #   ...further okay
 )*
 )* # further okay, if led by comma
 :                                # closing colon
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  )? #       optional route
 (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 )                    # initial word
 (?:  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |
 " (?:                      # opening quote...
 [^\\\x80-\xff\n\015"]                #   Anything except backslash and quote
 |                     #    or
 \\ [^\x80-\xff]           #   Escaped something (something != CR)
 )* "  # closing quote
 )  )* # further okay, if led by a period
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  @  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*    (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                           # initial subdomain
 (?:                                  #
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  \.                        # if led by a period...
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*   (?:
 [^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]+    # some number of atom characters...
 (?![^(\040)<>@,;:".\\\[\]\000-\037\x80-\xff]) # ..not followed by something that could be part of an atom
 |   \[                         # [
 (?: [^\\\x80-\xff\n\015\[\]] |  \\ [^\x80-\xff]  )*    #    stuff
 \]                        #           ]
 )                     #   ...further okay
 )*
 #       address spec
 (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*  > #                  trailing >
 # name and address
 )  (?: [\040\t] |  \(
 (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  |  \( (?:  [^\\\x80-\xff\n\015()]  |  \\ [^\x80-\xff]  )* \)  )*
 \)  )*                       # optional trailing comment
 /xSI
 Capturing subpattern count = 0  Capturing subpattern count = 0
No optionsContains explicit CR or LF match
First char = 'a'Options: extended
Need char = 'c'No first char
 No need char
 Subject length lower bound = 3  Subject length lower bound = 3
No set of starting bytesStarting byte set: \x09 \x20 ! " # $ % & ' ( * + - / 0 1 2 3 4 5 6 7 8 
JIT study was successful  9 = ? A B C D E F G H I J K L M N O P Q R S T U V W X Y Z ^ _ ` a b c d e 
   f g h i j k l m n o p q r s t u v w x y z { | } ~ \x7f 
   
/ab(*COMMIT)/S+I/-- Although this saved pattern was compiled with link-size=2, it does no harm
 to run this test with other link sizes because it is going to generated a
 "compiled in wrong mode" error as soon as it is loaded, so the link size does 
 not matter. --/
 
 <!testsaved16
 Compiled pattern loaded from testsaved16
 No study data
 Error -28 from pcre_fullinfo(0)
 Running in 8-bit mode but pattern was compiled in 16-bit mode
 
 /\h/SI
 Capturing subpattern count = 0  Capturing subpattern count = 0
 No options  No options
First char = 'a'No first char
Need char = 'b'No need char
Subject length lower bound = 2Subject length lower bound = 1
No set of starting bytesStarting byte set: \x09 \x20 \xa0 
JIT study was not successful 
   
/abc/S+I>testsavedregex/\v/SI
 Capturing subpattern count = 0  Capturing subpattern count = 0
 No options  No options
First char = 'a'No first char
Need char = 'c'No need char
Subject length lower bound = 3Subject length lower bound = 1
No set of starting bytesStarting byte set: \x0a \x0b \x0c \x0d \x85 
JIT study was successful 
Compiled pattern written to testsavedregex 
Study data written to testsavedregex 
   
<testsavedregex/\R/SI
Compiled pattern loaded from testsavedregex 
Study data loaded from testsavedregex 
    abc 
 0: abc 
 
/a*/SI 
 Capturing subpattern count = 0  Capturing subpattern count = 0
 No options  No options
 No first char  No first char
 No need char  No need char
Study returned NULLSubject length lower bound = 1
 Starting byte set: \x0a \x0b \x0c \x0d \x85 
   
/(?(R)a*(?1)|((?R))b)/S+/[\h]/BZ
    aaaabcde------------------------------------------------------------------
Error -27 (JIT stack limit reached)        Bra
         [\x09 \xa0]
         Ket
         End
 ------------------------------------------------------------------
     >\x09<
  0: \x09
 
 /[\h]+/BZ
 ------------------------------------------------------------------
         Bra
         [\x09 \xa0]+
         Ket
         End
 ------------------------------------------------------------------
     >\x09\x20\xa0<
  0: \x09 \xa0
 
 /[\v]/BZ
 ------------------------------------------------------------------
         Bra
         [\x0a-\x0d\x85]
         Ket
         End
 ------------------------------------------------------------------
 
 /[\H]/BZ
 ------------------------------------------------------------------
         Bra
         [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff]
         Ket
         End
 ------------------------------------------------------------------
 
 /[^\h]/BZ
 ------------------------------------------------------------------
         Bra
         [\x00-\x08\x0a-\x1f!-\x9f\xa1-\xff] (neg)
         Ket
         End
 ------------------------------------------------------------------
 
 /[\V]/BZ
 ------------------------------------------------------------------
         Bra
         [\x00-\x09\x0e-\x84\x86-\xff]
         Ket
         End
 ------------------------------------------------------------------
 
 /[\x0a\V]/BZ
 ------------------------------------------------------------------
         Bra
         [\x00-\x0a\x0e-\x84\x86-\xff]
         Ket
         End
 ------------------------------------------------------------------
 
 /\777/I
 Failed: octal value is greater than \377 in 8-bit non-UTF-8 mode at offset 3
   
 /-- End of testinput14 --/  /-- End of testinput14 --/

Removed from v.1.1.1.1  
changed lines
  Added in v.1.1.1.2


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>