Some manual changes done to the library were lost with this update. They will be added in the next commit.
		
			
				
	
	
		
			98 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
# Tests of \C when Unicode support is available. Note that \C is not supported
 | 
						|
# for DFA matching in UTF mode, so this test is not run with -dfa. The output
 | 
						|
# of this test is different in 8-, 16-, and 32-bit modes. Some tests may match
 | 
						|
# in some widths and not in others.
 | 
						|
 | 
						|
/ab\Cde/utf,info
 | 
						|
    abXde
 | 
						|
 | 
						|
# This should produce an error diagnostic (\C in UTF lookbehind) in 8-bit and
 | 
						|
# 16-bit modes, but not in 32-bit mode.
 | 
						|
 | 
						|
/(?<=ab\Cde)X/utf
 | 
						|
    ab!deXYZ
 | 
						|
 | 
						|
# Autopossessification tests
 | 
						|
 | 
						|
/\C+\X \X+\C/Bx
 | 
						|
 | 
						|
/\C+\X \X+\C/Bx,utf
 | 
						|
 | 
						|
/\C\X*TӅ;
 | 
						|
{0,6}\v+
 | 
						|
F
 | 
						|
/utf
 | 
						|
\= Expect no match
 | 
						|
    Ӆ\x0a
 | 
						|
 | 
						|
/\C(\W?ſ)'?{{/utf
 | 
						|
\= Expect no match
 | 
						|
    \\C(\\W?ſ)'?{{
 | 
						|
 | 
						|
/X(\C{3})/utf
 | 
						|
    X\x{1234}
 | 
						|
    X\x{11234}Y
 | 
						|
    X\x{11234}YZ
 | 
						|
 | 
						|
/X(\C{4})/utf
 | 
						|
    X\x{1234}YZ
 | 
						|
    X\x{11234}YZ
 | 
						|
    X\x{11234}YZW
 | 
						|
 | 
						|
/X\C*/utf
 | 
						|
    XYZabcdce
 | 
						|
 | 
						|
/X\C*?/utf
 | 
						|
    XYZabcde
 | 
						|
 | 
						|
/X\C{3,5}/utf
 | 
						|
    Xabcdefg
 | 
						|
    X\x{1234}
 | 
						|
    X\x{1234}YZ
 | 
						|
    X\x{1234}\x{512}
 | 
						|
    X\x{1234}\x{512}YZ
 | 
						|
    X\x{11234}Y
 | 
						|
    X\x{11234}YZ
 | 
						|
    X\x{11234}\x{512}
 | 
						|
    X\x{11234}\x{512}YZ
 | 
						|
    X\x{11234}\x{512}\x{11234}Z
 | 
						|
 | 
						|
/X\C{3,5}?/utf
 | 
						|
    Xabcdefg
 | 
						|
    X\x{1234}
 | 
						|
    X\x{1234}YZ
 | 
						|
    X\x{1234}\x{512}
 | 
						|
    X\x{11234}Y
 | 
						|
    X\x{11234}YZ
 | 
						|
    X\x{11234}\x{512}YZ
 | 
						|
    X\x{11234}
 | 
						|
 | 
						|
/a\Cb/utf
 | 
						|
    aXb
 | 
						|
    a\nb
 | 
						|
    a\x{100}b
 | 
						|
 | 
						|
/a\C\Cb/utf
 | 
						|
    a\x{100}b
 | 
						|
    a\x{12257}b
 | 
						|
    a\x{12257}\x{11234}b
 | 
						|
 | 
						|
/ab\Cde/utf
 | 
						|
    abXde
 | 
						|
 | 
						|
# This one is here not because it's different to Perl, but because the way
 | 
						|
# the captured single code unit is displayed. (In Perl it becomes a character,
 | 
						|
# and you can't tell the difference.)
 | 
						|
 | 
						|
/X(\C)(.*)/utf
 | 
						|
    X\x{1234}
 | 
						|
    X\nabc
 | 
						|
 | 
						|
# This one is here because Perl gives out a grumbly error message (quite
 | 
						|
# correctly, but that messes up comparisons).
 | 
						|
 | 
						|
/a\Cb/utf
 | 
						|
\= Expect no match in 8-bit mode
 | 
						|
    a\x{100}b
 | 
						|
 | 
						|
# End of testinput22
 |