diff options
Diffstat (limited to 'test/spec/utf8-custom-section-id.wast')
-rw-r--r-- | test/spec/utf8-custom-section-id.wast | 1792 |
1 files changed, 0 insertions, 1792 deletions
diff --git a/test/spec/utf8-custom-section-id.wast b/test/spec/utf8-custom-section-id.wast deleted file mode 100644 index 129d2b913..000000000 --- a/test/spec/utf8-custom-section-id.wast +++ /dev/null @@ -1,1792 +0,0 @@ -;;;;;; Invalid UTF-8 custom section names - -;;;; Continuation bytes not preceded by prefixes - -;; encoding starts with (first) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\80" ;; "\80" - ) - "invalid UTF-8 encoding" -) - -;; encoding starts with (0x8f) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\8f" ;; "\8f" - ) - "invalid UTF-8 encoding" -) - -;; encoding starts with (0x90) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\90" ;; "\90" - ) - "invalid UTF-8 encoding" -) - -;; encoding starts with (0x9f) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\9f" ;; "\9f" - ) - "invalid UTF-8 encoding" -) - -;; encoding starts with (0xa0) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\a0" ;; "\a0" - ) - "invalid UTF-8 encoding" -) - -;; encoding starts with (last) continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\bf" ;; "\bf" - ) - "invalid UTF-8 encoding" -) - -;;;; 2-byte sequences - -;; 2-byte sequence contains 3 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\c2\80\80" ;; "\c2\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 2-byte sequence contains 1 byte at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\c2" ;; "\c2" - ) - "invalid UTF-8 encoding" -) - -;; 2-byte sequence contains 1 byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c2\2e" ;; "\c2." - ) - "invalid UTF-8 encoding" -) - -;;;; 2-byte sequence contents - -;; overlong encoding after 0xc0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c0\80" ;; "\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xc0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c0\bf" ;; "\c0\bf" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xc1 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c1\80" ;; "\c1\80" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xc1 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c1\bf" ;; "\c1\bf" - ) - "invalid UTF-8 encoding" -) - -;; byte after (first) 2-byte prefix not a contination byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c2\00" ;; "\c2\00" - ) - "invalid UTF-8 encoding" -) - -;; byte after (first) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c2\7f" ;; "\c2\7f" - ) - "invalid UTF-8 encoding" -) - -;; byte after (first) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c2\c0" ;; "\c2\c0" - ) - "invalid UTF-8 encoding" -) - -;; byte after (first) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\c2\fd" ;; "\c2\fd" - ) - "invalid UTF-8 encoding" -) - -;; byte after (last) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\df\00" ;; "\df\00" - ) - "invalid UTF-8 encoding" -) - -;; byte after (last) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\df\7f" ;; "\df\7f" - ) - "invalid UTF-8 encoding" -) - -;; byte after (last) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\df\c0" ;; "\df\c0" - ) - "invalid UTF-8 encoding" -) - -;; byte after (last) 2-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\df\fd" ;; "\df\fd" - ) - "invalid UTF-8 encoding" -) - -;;;; 3-byte sequences - -;; 3-byte sequence contains 4 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\e1\80\80\80" ;; "\e1\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 3-byte sequence contains 2 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\e1\80" ;; "\e1\80" - ) - "invalid UTF-8 encoding" -) - -;; 3-byte sequence contains 2 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\80\2e" ;; "\e1\80." - ) - "invalid UTF-8 encoding" -) - -;; 3-byte sequence contains 1 byte at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\e1" ;; "\e1" - ) - "invalid UTF-8 encoding" -) - -;; 3-byte sequence contains 1 byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\e1\2e" ;; "\e1." - ) - "invalid UTF-8 encoding" -) - -;;;; 3-byte sequence contents - -;; first byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\00\a0" ;; "\e0\00\a0" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\7f\a0" ;; "\e0\7f\a0" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xe0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\80\80" ;; "\e0\80\80" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xe0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\80\a0" ;; "\e0\80\a0" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xe0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\9f\a0" ;; "\e0\9f\a0" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xe0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\9f\bf" ;; "\e0\9f\bf" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\c0\a0" ;; "\e0\c0\a0" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\fd\a0" ;; "\e0\fd\a0" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\00\80" ;; "\e1\00\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\7f\80" ;; "\e1\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\c0\80" ;; "\e1\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\fd\80" ;; "\e1\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\00\80" ;; "\ec\00\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\7f\80" ;; "\ec\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\c0\80" ;; "\ec\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\fd\80" ;; "\ec\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\00\80" ;; "\ed\00\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\7f\80" ;; "\ed\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; byte sequence reserved for UTF-16 surrogate half -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\a0\80" ;; "\ed\a0\80" - ) - "invalid UTF-8 encoding" -) - -;; byte sequence reserved for UTF-16 surrogate half -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\a0\bf" ;; "\ed\a0\bf" - ) - "invalid UTF-8 encoding" -) - -;; byte sequence reserved for UTF-16 surrogate half -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\bf\80" ;; "\ed\bf\80" - ) - "invalid UTF-8 encoding" -) - -;; byte sequence reserved for UTF-16 surrogate half -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\bf\bf" ;; "\ed\bf\bf" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\c0\80" ;; "\ed\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\fd\80" ;; "\ed\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\00\80" ;; "\ee\00\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\7f\80" ;; "\ee\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\c0\80" ;; "\ee\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\fd\80" ;; "\ee\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\00\80" ;; "\ef\00\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\7f\80" ;; "\ef\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\c0\80" ;; "\ef\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\fd\80" ;; "\ef\fd\80" - ) - "invalid UTF-8 encoding" -) - -;;;; 3-byte sequence contents (third byte) - -;; second byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\a0\00" ;; "\e0\a0\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\a0\7f" ;; "\e0\a0\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\a0\c0" ;; "\e0\a0\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xe0) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e0\a0\fd" ;; "\e0\a0\fd" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\80\00" ;; "\e1\80\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\80\7f" ;; "\e1\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\80\c0" ;; "\e1\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\e1\80\fd" ;; "\e1\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\80\00" ;; "\ec\80\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\80\7f" ;; "\ec\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\80\c0" ;; "\ec\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ec\80\fd" ;; "\ec\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\80\00" ;; "\ed\80\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\80\7f" ;; "\ed\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\80\c0" ;; "\ed\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xed) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ed\80\fd" ;; "\ed\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\80\00" ;; "\ee\80\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\80\7f" ;; "\ee\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\80\c0" ;; "\ee\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ee\80\fd" ;; "\ee\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\80\00" ;; "\ef\80\00" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\80\7f" ;; "\ef\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\80\c0" ;; "\ef\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 3-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\ef\80\fd" ;; "\ef\80\fd" - ) - "invalid UTF-8 encoding" -) - -;;;; 4-byte sequences - -;; 4-byte sequence contains 5 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\f1\80\80\80\80" ;; "\f1\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 3 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\f1\80\80" ;; "\f1\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 3 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\80\23" ;; "\f1\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 2 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\f1\80" ;; "\f1\80" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 2 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\f1\80\23" ;; "\f1\80#" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 1 byte at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\f1" ;; "\f1" - ) - "invalid UTF-8 encoding" -) - -;; 4-byte sequence contains 1 byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\f1\23" ;; "\f1#" - ) - "invalid UTF-8 encoding" -) - -;;;; 4-byte sequence contents - -;; first byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\00\90\90" ;; "\f0\00\90\90" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\7f\90\90" ;; "\f0\7f\90\90" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xf0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\80\80\80" ;; "\f0\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xf0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\80\90\90" ;; "\f0\80\90\90" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xf0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\8f\90\90" ;; "\f0\8f\90\90" - ) - "invalid UTF-8 encoding" -) - -;; overlong encoding after 0xf0 prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\8f\bf\bf" ;; "\f0\8f\bf\bf" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\c0\90\90" ;; "\f0\c0\90\90" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\fd\90\90" ;; "\f0\fd\90\90" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\00\80\80" ;; "\f1\00\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\7f\80\80" ;; "\f1\7f\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\c0\80\80" ;; "\f1\c0\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\fd\80\80" ;; "\f1\fd\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\00\80\80" ;; "\f3\00\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\7f\80\80" ;; "\f3\7f\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\c0\80\80" ;; "\f3\c0\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\fd\80\80" ;; "\f3\fd\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\00\80\80" ;; "\f4\00\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\7f\80\80" ;; "\f4\7f\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (first) invalid code point -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\90\80\80" ;; "\f4\90\80\80" - ) - "invalid UTF-8 encoding" -) - -;; invalid code point -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\bf\80\80" ;; "\f4\bf\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\c0\80\80" ;; "\f4\c0\80\80" - ) - "invalid UTF-8 encoding" -) - -;; first byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\fd\80\80" ;; "\f4\fd\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (first) invalid 4-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f5\80\80\80" ;; "\f5\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (last) invalid 4-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f7\80\80\80" ;; "\f7\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (last) invalid 4-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f7\bf\bf\bf" ;; "\f7\bf\bf\bf" - ) - "invalid UTF-8 encoding" -) - -;;;; 4-byte sequence contents (third byte) - -;; second byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\00\90" ;; "\f0\90\00\90" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\7f\90" ;; "\f0\90\7f\90" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\c0\90" ;; "\f0\90\c0\90" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\fd\90" ;; "\f0\90\fd\90" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\00\80" ;; "\f1\80\00\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\7f\80" ;; "\f1\80\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\c0\80" ;; "\f1\80\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\fd\80" ;; "\f1\80\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\00\80" ;; "\f3\80\00\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\7f\80" ;; "\f3\80\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\c0\80" ;; "\f3\80\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\fd\80" ;; "\f3\80\fd\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\00\80" ;; "\f4\80\00\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\7f\80" ;; "\f4\80\7f\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\c0\80" ;; "\f4\80\c0\80" - ) - "invalid UTF-8 encoding" -) - -;; second byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\fd\80" ;; "\f4\80\fd\80" - ) - "invalid UTF-8 encoding" -) - -;;;; 4-byte sequence contents (fourth byte) - -;; third byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\90\00" ;; "\f0\90\90\00" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\90\7f" ;; "\f0\90\90\7f" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\90\c0" ;; "\f0\90\90\c0" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf0) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f0\90\90\fd" ;; "\f0\90\90\fd" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\80\00" ;; "\f1\80\80\00" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\80\7f" ;; "\f1\80\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\80\c0" ;; "\f1\80\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (first normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f1\80\80\fd" ;; "\f1\80\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\80\00" ;; "\f3\80\80\00" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\80\7f" ;; "\f3\80\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\80\c0" ;; "\f3\80\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (last normal) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f3\80\80\fd" ;; "\f3\80\80\fd" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\80\00" ;; "\f4\80\80\00" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\80\7f" ;; "\f4\80\80\7f" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\80\c0" ;; "\f4\80\80\c0" - ) - "invalid UTF-8 encoding" -) - -;; third byte after (0xf4) 4-byte prefix not a continuation byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f4\80\80\fd" ;; "\f4\80\80\fd" - ) - "invalid UTF-8 encoding" -) - -;;;; 5-byte sequences - -;; 5-byte sequence contains 6 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\07" ;; custom section - "\06\f8\80\80\80\80\80" ;; "\f8\80\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 4 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f8\80\80\80" ;; "\f8\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 4 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\f8\80\80\80\23" ;; "\f8\80\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 3 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\f8\80\80" ;; "\f8\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 3 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\f8\80\80\23" ;; "\f8\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 2 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\f8\80" ;; "\f8\80" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 2 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\f8\80\23" ;; "\f8\80#" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 1 byte at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\f8" ;; "\f8" - ) - "invalid UTF-8 encoding" -) - -;; 5-byte sequence contains 1 byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\f8\23" ;; "\f8#" - ) - "invalid UTF-8 encoding" -) - -;;;; 5-byte sequence contents - -;; (first) invalid 5-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\f8\80\80\80\80" ;; "\f8\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (last) invalid 5-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\fb\bf\bf\bf\bf" ;; "\fb\bf\bf\bf\bf" - ) - "invalid UTF-8 encoding" -) - -;;;; 6-byte sequences - -;; 6-byte sequence contains 7 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\08" ;; custom section - "\07\fc\80\80\80\80\80\80" ;; "\fc\80\80\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 5 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\fc\80\80\80\80" ;; "\fc\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 5 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\07" ;; custom section - "\06\fc\80\80\80\80\23" ;; "\fc\80\80\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 4 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\fc\80\80\80" ;; "\fc\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 4 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\06" ;; custom section - "\05\fc\80\80\80\23" ;; "\fc\80\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 3 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\fc\80\80" ;; "\fc\80\80" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 3 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\fc\80\80\23" ;; "\fc\80\80#" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 2 bytes at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\fc\80" ;; "\fc\80" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 2 bytes -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\04" ;; custom section - "\03\fc\80\23" ;; "\fc\80#" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 1 byte at end of string -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\fc" ;; "\fc" - ) - "invalid UTF-8 encoding" -) - -;; 6-byte sequence contains 1 byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\fc\23" ;; "\fc#" - ) - "invalid UTF-8 encoding" -) - -;;;; 6-byte sequence contents - -;; (first) invalid 6-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\07" ;; custom section - "\06\fc\80\80\80\80\80" ;; "\fc\80\80\80\80\80" - ) - "invalid UTF-8 encoding" -) - -;; (last) invalid 6-byte prefix -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\07" ;; custom section - "\06\fd\bf\bf\bf\bf\bf" ;; "\fd\bf\bf\bf\bf\bf" - ) - "invalid UTF-8 encoding" -) - -;;;; Miscellaneous invalid bytes - -;; invalid byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\fe" ;; "\fe" - ) - "invalid UTF-8 encoding" -) - -;; invalid byte -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\02" ;; custom section - "\01\ff" ;; "\ff" - ) - "invalid UTF-8 encoding" -) - -;; UTF-16BE BOM -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\fe\ff" ;; "\fe\ff" - ) - "invalid UTF-8 encoding" -) - -;; UTF-32BE BOM -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\00\00\fe\ff" ;; "\00\00\fe\ff" - ) - "invalid UTF-8 encoding" -) - -;; UTF-16LE BOM -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\03" ;; custom section - "\02\ff\fe" ;; "\ff\fe" - ) - "invalid UTF-8 encoding" -) - -;; UTF-32LE BOM -(assert_malformed - (module binary - "\00asm" "\01\00\00\00" - "\00\05" ;; custom section - "\04\ff\fe\00\00" ;; "\ff\fe\00\00" - ) - "invalid UTF-8 encoding" -) - |