| # These test special (mostly error) UTF features of DFA matching. They are a |
| # selection of the more comprehensive tests that are run for non-DFA matching. |
| # The output is different for the different widths. |
| |
| #subject dfa |
| |
| /X/utf |
| XX\x{d800} |
| Failed: error -24: UTF-16 error: missing low surrogate at end at offset 2 |
| XX\x{d800}\=offset=3 |
| No match |
| XX\x{d800}\=no_utf_check |
| 0: X |
| XX\x{da00} |
| Failed: error -24: UTF-16 error: missing low surrogate at end at offset 2 |
| XX\x{da00}\=no_utf_check |
| 0: X |
| XX\x{dc00} |
| Failed: error -26: UTF-16 error: isolated low surrogate at offset 2 |
| XX\x{dc00}\=no_utf_check |
| 0: X |
| XX\x{de00} |
| Failed: error -26: UTF-16 error: isolated low surrogate at offset 2 |
| XX\x{de00}\=no_utf_check |
| 0: X |
| XX\x{dfff} |
| Failed: error -26: UTF-16 error: isolated low surrogate at offset 2 |
| XX\x{dfff}\=no_utf_check |
| 0: X |
| XX\x{110000} |
| ** Failed: character \x{110000} is greater than 0x10ffff and so cannot be converted to UTF-16 |
| XX\x{d800}\x{1234} |
| Failed: error -25: UTF-16 error: invalid low surrogate at offset 3 |
| |
| /badutf/utf |
| X\xdf |
| No match |
| XX\xef |
| No match |
| XXX\xef\x80 |
| No match |
| X\xf7 |
| No match |
| XX\xf7\x80 |
| No match |
| XXX\xf7\x80\x80 |
| No match |
| |
| /shortutf/utf |
| XX\xdf\=ph |
| No match |
| XX\xef\=ph |
| No match |
| XX\xef\x80\=ph |
| No match |
| \xf7\=ph |
| No match |
| \xf7\x80\=ph |
| No match |
| |
| # End of testinput14 |