summaryrefslogtreecommitdiff
path: root/testdata/testoutput22-16
diff options
context:
space:
mode:
authorph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2015-10-17 13:50:56 +0000
committerph10 <ph10@6239d852-aaf2-0410-a92c-79f79f948069>2015-10-17 13:50:56 +0000
commitdeee8d934595c4b856361955aaf4dd26995d203a (patch)
treee51b5816563a758d536c5c15961441724944dcb1 /testdata/testoutput22-16
parent91cb973c4537327c18217b50f20e82283affe976 (diff)
downloadpcre2-deee8d934595c4b856361955aaf4dd26995d203a.tar.gz
Implement --never-backslash-C
git-svn-id: svn://vcs.exim.org/pcre2/code/trunk@386 6239d852-aaf2-0410-a92c-79f79f948069
Diffstat (limited to 'testdata/testoutput22-16')
-rw-r--r--testdata/testoutput22-16161
1 files changed, 161 insertions, 0 deletions
diff --git a/testdata/testoutput22-16 b/testdata/testoutput22-16
new file mode 100644
index 0000000..21a649e
--- /dev/null
+++ b/testdata/testoutput22-16
@@ -0,0 +1,161 @@
+# 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
+ abXde
+ 0: abXde
+
+# This should produce an error diagnostic (\C in UTF lookbehind)
+
+/(?<=ab\Cde)X/utf
+Failed: error 136 at offset 10: \C is not allowed in a lookbehind assertion
+
+# Autopossessification tests
+
+/\C+\X \X+\C/Bx
+------------------------------------------------------------------
+ Bra
+ AllAny+
+ extuni
+ extuni+
+ AllAny
+ Ket
+ End
+------------------------------------------------------------------
+
+/\C+\X \X+\C/Bx,utf
+------------------------------------------------------------------
+ Bra
+ Anybyte+
+ extuni
+ extuni+
+ Anybyte
+ Ket
+ End
+------------------------------------------------------------------
+
+/\C\X*TӅ;
+{0,6}\v+ F
+/utf
+\= Expect no match
+ Ӆ\x0a
+No match
+
+/\C(\W?ſ)'?{{/utf
+\= Expect no match
+ \\C(\\W?ſ)'?{{
+No match
+
+/X(\C{3})/utf
+ X\x{1234}
+No match
+ X\x{11234}Y
+ 0: X\x{11234}Y
+ 1: \x{11234}Y
+ X\x{11234}YZ
+ 0: X\x{11234}Y
+ 1: \x{11234}Y
+
+/X(\C{4})/utf
+ X\x{1234}YZ
+No match
+ X\x{11234}YZ
+ 0: X\x{11234}YZ
+ 1: \x{11234}YZ
+ X\x{11234}YZW
+ 0: X\x{11234}YZ
+ 1: \x{11234}YZ
+
+/X\C*/utf
+ XYZabcdce
+ 0: XYZabcdce
+
+/X\C*?/utf
+ XYZabcde
+ 0: X
+
+/X\C{3,5}/utf
+ Xabcdefg
+ 0: Xabcde
+ X\x{1234}
+No match
+ X\x{1234}YZ
+ 0: X\x{1234}YZ
+ X\x{1234}\x{512}
+No match
+ X\x{1234}\x{512}YZ
+ 0: X\x{1234}\x{512}YZ
+ X\x{11234}Y
+ 0: X\x{11234}Y
+ X\x{11234}YZ
+ 0: X\x{11234}YZ
+ X\x{11234}\x{512}
+ 0: X\x{11234}\x{512}
+ X\x{11234}\x{512}YZ
+ 0: X\x{11234}\x{512}YZ
+ X\x{11234}\x{512}\x{11234}Z
+ 0: X\x{11234}\x{512}\x{11234}
+
+/X\C{3,5}?/utf
+ Xabcdefg
+ 0: Xabc
+ X\x{1234}
+No match
+ X\x{1234}YZ
+ 0: X\x{1234}YZ
+ X\x{1234}\x{512}
+No match
+ X\x{11234}Y
+ 0: X\x{11234}Y
+ X\x{11234}YZ
+ 0: X\x{11234}Y
+ X\x{11234}\x{512}YZ
+ 0: X\x{11234}\x{512}
+ X\x{11234}
+No match
+
+/a\Cb/utf
+ aXb
+ 0: aXb
+ a\nb
+ 0: a\x{0a}b
+ a\x{100}b
+ 0: a\x{100}b
+
+/a\C\Cb/utf
+ a\x{100}b
+No match
+ a\x{12257}b
+ 0: a\x{12257}b
+ a\x{12257}\x{11234}b
+No match
+
+/ab\Cde/utf
+ abXde
+ 0: 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}
+ 0: X\x{1234}
+ 1: \x{1234}
+ 2:
+ X\nabc
+ 0: X\x{0a}abc
+ 1: \x{0a}
+ 2: abc
+
+# 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
+ 0: a\x{100}b
+
+# End of testinput22