| ;; Test files can define multiple modules. Test that implementations treat |
| ;; each module independently from the other. |
| |
| (module |
| (func (export "foo") (result i32) (i32.const 0)) |
| ) |
| |
| (assert_return (invoke "foo") (i32.const 0)) |
| |
| ;; Another module, same function name, different contents. |
| |
| (module |
| (func (export "foo") (result i32) (i32.const 1)) |
| ) |
| |
| (assert_return (invoke "foo") (i32.const 1)) |
| |
| |
| (module |
| ;; Test that we can use the empty string as a symbol. |
| (func (export "") (result i32) (i32.const 0)) |
| |
| ;; Test that we can use names beginning with a digit. |
| (func (export "0") (result i32) (i32.const 1)) |
| |
| ;; Test that we can use names beginning with a dash. |
| (func (export "-0") (result i32) (i32.const 2)) |
| |
| ;; Test that we can use names beginning with an underscore. |
| (func (export "_") (result i32) (i32.const 3)) |
| |
| ;; Test that we can use names beginning with a dollar sign. |
| (func (export "$") (result i32) (i32.const 4)) |
| |
| ;; Test that we can use names beginning with an at sign. |
| (func (export "@") (result i32) (i32.const 5)) |
| |
| ;; Test that we can use non-alphanumeric names. |
| (func (export "~!@#$%^&*()_+`-={}|[]\\:\";'<>?,./ ") (result i32) (i32.const 6)) |
| |
| ;; Test that we can use names that have special meaning in JS. |
| (func (export "NaN") (result i32) (i32.const 7)) |
| (func (export "Infinity") (result i32) (i32.const 8)) |
| (func (export "if") (result i32) (i32.const 9)) |
| |
| ;; Test that we can use common libc names without conflict. |
| (func (export "malloc") (result i32) (i32.const 10)) |
| |
| ;; Test that we can use some libc hidden names without conflict. |
| (func (export "_malloc") (result i32) (i32.const 11)) |
| (func (export "__malloc") (result i32) (i32.const 12)) |
| |
| ;; Test that names are case-sensitive. |
| (func (export "a") (result i32) (i32.const 13)) |
| (func (export "A") (result i32) (i32.const 14)) |
| |
| ;; Test that UTF-8 BOM code points can appear in identifiers. |
| (func (export "") (result i32) (i32.const 15)) |
| |
| ;; Test that Unicode normalization is not applied. These function names |
| ;; contain different codepoints which normalize to the same thing under |
| ;; NFC or NFD. |
| (func (export "Å") (result i32) (i32.const 16)) |
| (func (export "Å") (result i32) (i32.const 17)) |
| (func (export "Å") (result i32) (i32.const 18)) |
| |
| ;; Test that Unicode compatibility normalization is not applied. These |
| ;; function names contain different codepoints which normalize to the |
| ;; same thing under NFKC or NFKD. |
| (func (export "ffi") (result i32) (i32.const 19)) |
| (func (export "ffi") (result i32) (i32.const 20)) |
| (func (export "ffi") (result i32) (i32.const 21)) |
| |
| ;; Test the C0 control codes. |
| (func (export "\00\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f") (result i32) (i32.const 22)) |
| (func (export "\10\11\12\13\14\15\16\17\18\19\1a\1b\1c\1d\1e\1f") (result i32) (i32.const 23)) |
| ;; Test miscellaneous control codes. |
| (func (export " \7f") (result i32) (i32.const 24)) |
| ;; Test the C1 control codes. |
| (func (export "\c2\80\c2\81\c2\82\c2\83\c2\84\c2\85\c2\86\c2\87\c2\88\c2\89\c2\8a\c2\8b\c2\8c\c2\8d\c2\8e\c2\8f") (result i32) (i32.const 25)) |
| (func (export "\c2\90\c2\91\c2\92\c2\93\c2\94\c2\95\c2\96\c2\97\c2\98\c2\99\c2\9a\c2\9b\c2\9c\c2\9d\c2\9e\c2\9f") (result i32) (i32.const 26)) |
| ;; Test the Unicode Specials. |
| (func (export "\ef\bf\b0\ef\bf\b1\ef\bf\b2\ef\bf\b3\ef\bf\b4\ef\bf\b5\ef\bf\b6\ef\bf\b7") (result i32) (i32.const 27)) |
| (func (export "\ef\bf\b8\ef\bf\b9\ef\bf\ba\ef\bf\bb\ef\bf\bc\ef\bf\bd\ef\bf\be\ef\bf\bf") (result i32) (i32.const 28)) |
| |
| ;; Test that the control pictures are distinct from the control codes they |
| ;; depict. These correspond to the C0 and miscellaneous control code tests |
| ;; above. |
| (func (export "␀␁␂␃␄␅␆␇␈␉␊␋␌␍␎␏") (result i32) (i32.const 29)) |
| (func (export "␐␑␒␓␔␕␖␗␘␙␚␛␜␝␞␟") (result i32) (i32.const 30)) |
| (func (export "␠␡") (result i32) (i32.const 31)) |
| |
| ;; Test the Unicode Specials in non-escaped form (excluding U+FFFE and |
| ;; U+FFFF, so that generic tools don't detect this file as non-UTF-8). |
| (func (export "�") (result i32) (i32.const 32)) |
| |
| ;; Test a bare ZWJ code point. |
| (func (export "") (result i32) (i32.const 33)) |
| ;; Test a bare ZWNJ code point. |
| (func (export "") (result i32) (i32.const 34)) |
| |
| ;; Test various bare joiner code points. |
| (func (export "͏") (result i32) (i32.const 35)) |
| (func (export "") (result i32) (i32.const 36)) |
| (func (export "⵿") (result i32) (i32.const 37)) |
| (func (export "𑁿") (result i32) (i32.const 38)) |
| (func (export "") (result i32) (i32.const 39)) |
| |
| ;; Test various interesting code points: reverse BOM, zero-width space, |
| ;; no-break space, soft hyphen, word joiner, ogham space mark, |
| ;; right-to-left override, left-to-right override. |
| (func (export " ") (result i32) (i32.const 40)) |
| |
| ;; Test more interesting code points: left-to-right mark, right-to-left mark, |
| ;; non-breaking hyphen, line separator, paragraph separator, |
| ;; left-to-right embedding, right-to-left embedding, |
| ;; pop directional formatting, narrow no-break space, left-to-right isolate, |
| ;; right-to-left isolate, first strong isolate, pop directional isolate. |
| (func (export "‑
") (result i32) (i32.const 41)) |
| |
| ;; Test some deprecated code points: inhibit symmetric swapping, |
| ;; activate symmetric swapping, inhibit arabic form shaping, |
| ;; activate arabic form shaping, national digit shapes, nominal digit shapes. |
| (func (export "") (result i32) (i32.const 42)) |
| |
| ;; Test "invisible" operator code points. |
| (func (export "") (result i32) (i32.const 43)) |
| |
| ;; Test that code points outside the BMP are supported. |
| (func (export "𐀀") (result i32) (i32.const 44)) |
| |
| ;; Test that WebAssembly implementations cope in the presence of Zalgo. |
| (func (export "Z̴͇̫̥̪͓͈͔͎̗̞̺̯̱̞̙̱̜̖̠̏͆̆͛͌͘͞ḁ̶̰̳̭͙̲̱̹̝͎̼͗ͨ̎̄̆͗̿̀́͟͡l̶̷͉̩̹̫̝͖̙̲̼͇͚͍̮͎̥̞̈́͊͗ͦ̈́ͫ̇́̚ͅͅg̶͕͔͚̩̓̐̅ͮ̔̐̎̂̏̾͊̍͋͊ͧ́̆ͦ͞o̡͋̔͐ͪͩ͏̢̧̫̙̤̮͖͙͓̺̜̩̼̘̠́") (result i32) (i32.const 45)) |
| |
| ;; Test Hangul filler code points. |
| (func (export "ᅟᅠㅤᅠ") (result i32) (i32.const 46)) |
| |
| ;; Test variation selectors (which are also ID_Continue code points). |
| (func (export "︀") (result i32) (i32.const 47)) |
| (func (export "︄") (result i32) (i32.const 48)) |
| (func (export "󠄀") (result i32) (i32.const 49)) |
| (func (export "󠇯") (result i32) (i32.const 50)) |
| |
| ;; Test an uncombined combining code point. |
| (func (export "̈") (result i32) (i32.const 51)) |
| |
| ;; Test that numerous different present and historical representations of the |
| ;; "newline" concept are distinct. Tests largely inspired by: |
| ;; https://en.wikipedia.org/wiki/Newline#Representations |
| ;; https://en.wikipedia.org/wiki/Newline#Unicode and |
| ;; https://en.wikipedia.org/wiki/Newline#Reverse_and_partial_line_feeds |
| (func (export "\0a") (result i32) (i32.const 52)) |
| (func (export "") (result i32) (i32.const 53)) |
| (func (export "
") (result i32) (i32.const 54)) |
| (func (export "\0d") (result i32) (i32.const 55)) |
| (func (export "\0d\0a") (result i32) (i32.const 56)) |
| (func (export "\0a\0d") (result i32) (i32.const 57)) |
| (func (export "\1e") (result i32) (i32.const 58)) |
| (func (export "\0b") (result i32) (i32.const 59)) |
| (func (export "\0c") (result i32) (i32.const 60)) |
| (func (export "\c2\85") (result i32) (i32.const 61)) |
| (func (export "
") (result i32) (i32.const 62)) |
| (func (export "…") (result i32) (i32.const 63)) |
| (func (export "⏎") (result i32) (i32.const 64)) |
| (func (export "\c2\8b") (result i32) (i32.const 65)) |
| (func (export "\c2\8c") (result i32) (i32.const 66)) |
| (func (export "\c2\8d") (result i32) (i32.const 67)) |
| (func (export "↵") (result i32) (i32.const 68)) |
| (func (export "↩") (result i32) (i32.const 69)) |
| (func (export "⌤") (result i32) (i32.const 70)) |
| (func (export "⤶") (result i32) (i32.const 71)) |
| (func (export "↲") (result i32) (i32.const 72)) |
| (func (export "⮨") (result i32) (i32.const 73)) |
| (func (export "⮰") (result i32) (i32.const 74)) |
| |
| ;; Test that non-characters are not replaced by the replacement character. |
| (func (export "�") (result i32) (i32.const 75)) |
| (func (export "\ef\b7\90") (result i32) (i32.const 76)) |
| (func (export "\ef\b7\91") (result i32) (i32.const 77)) |
| (func (export "\ef\b7\92") (result i32) (i32.const 78)) |
| (func (export "\ef\b7\93") (result i32) (i32.const 79)) |
| (func (export "\ef\b7\94") (result i32) (i32.const 80)) |
| (func (export "\ef\b7\95") (result i32) (i32.const 81)) |
| (func (export "\ef\b7\96") (result i32) (i32.const 82)) |
| (func (export "\ef\b7\97") (result i32) (i32.const 83)) |
| (func (export "\ef\b7\98") (result i32) (i32.const 84)) |
| (func (export "\ef\b7\99") (result i32) (i32.const 85)) |
| (func (export "\ef\b7\9a") (result i32) (i32.const 86)) |
| (func (export "\ef\b7\9b") (result i32) (i32.const 87)) |
| (func (export "\ef\b7\9c") (result i32) (i32.const 88)) |
| (func (export "\ef\b7\9d") (result i32) (i32.const 89)) |
| (func (export "\ef\b7\9e") (result i32) (i32.const 90)) |
| (func (export "\ef\b7\9f") (result i32) (i32.const 91)) |
| (func (export "\ef\b7\a0") (result i32) (i32.const 92)) |
| (func (export "\ef\b7\a1") (result i32) (i32.const 93)) |
| (func (export "\ef\b7\a2") (result i32) (i32.const 94)) |
| (func (export "\ef\b7\a3") (result i32) (i32.const 95)) |
| (func (export "\ef\b7\a4") (result i32) (i32.const 96)) |
| (func (export "\ef\b7\a5") (result i32) (i32.const 97)) |
| (func (export "\ef\b7\a6") (result i32) (i32.const 98)) |
| (func (export "\ef\b7\a7") (result i32) (i32.const 99)) |
| (func (export "\ef\b7\a8") (result i32) (i32.const 100)) |
| (func (export "\ef\b7\a9") (result i32) (i32.const 101)) |
| (func (export "\ef\b7\aa") (result i32) (i32.const 102)) |
| (func (export "\ef\b7\ab") (result i32) (i32.const 103)) |
| (func (export "\ef\b7\ac") (result i32) (i32.const 104)) |
| (func (export "\ef\b7\ad") (result i32) (i32.const 105)) |
| (func (export "\ef\b7\ae") (result i32) (i32.const 106)) |
| (func (export "\ef\b7\af") (result i32) (i32.const 107)) |
| (func (export "\ef\bf\be") (result i32) (i32.const 108)) |
| (func (export "\ef\bf\bf") (result i32) (i32.const 109)) |
| (func (export "\f0\9f\bf\be") (result i32) (i32.const 110)) |
| (func (export "\f0\9f\bf\bf") (result i32) (i32.const 111)) |
| (func (export "\f0\af\bf\be") (result i32) (i32.const 112)) |
| (func (export "\f0\af\bf\bf") (result i32) (i32.const 113)) |
| (func (export "\f0\bf\bf\be") (result i32) (i32.const 114)) |
| (func (export "\f0\bf\bf\bf") (result i32) (i32.const 115)) |
| (func (export "\f1\8f\bf\be") (result i32) (i32.const 116)) |
| (func (export "\f1\8f\bf\bf") (result i32) (i32.const 117)) |
| (func (export "\f1\9f\bf\be") (result i32) (i32.const 118)) |
| (func (export "\f1\9f\bf\bf") (result i32) (i32.const 119)) |
| (func (export "\f1\af\bf\be") (result i32) (i32.const 120)) |
| (func (export "\f1\af\bf\bf") (result i32) (i32.const 121)) |
| (func (export "\f1\bf\bf\be") (result i32) (i32.const 122)) |
| (func (export "\f1\bf\bf\bf") (result i32) (i32.const 123)) |
| (func (export "\f2\8f\bf\be") (result i32) (i32.const 124)) |
| (func (export "\f2\8f\bf\bf") (result i32) (i32.const 125)) |
| (func (export "\f2\9f\bf\be") (result i32) (i32.const 126)) |
| (func (export "\f2\9f\bf\bf") (result i32) (i32.const 127)) |
| (func (export "\f2\af\bf\be") (result i32) (i32.const 128)) |
| (func (export "\f2\af\bf\bf") (result i32) (i32.const 129)) |
| (func (export "\f2\bf\bf\be") (result i32) (i32.const 130)) |
| (func (export "\f2\bf\bf\bf") (result i32) (i32.const 131)) |
| (func (export "\f3\8f\bf\be") (result i32) (i32.const 132)) |
| (func (export "\f3\8f\bf\bf") (result i32) (i32.const 133)) |
| (func (export "\f3\9f\bf\be") (result i32) (i32.const 134)) |
| (func (export "\f3\9f\bf\bf") (result i32) (i32.const 135)) |
| (func (export "\f3\af\bf\be") (result i32) (i32.const 136)) |
| (func (export "\f3\af\bf\bf") (result i32) (i32.const 137)) |
| (func (export "\f3\bf\bf\be") (result i32) (i32.const 138)) |
| (func (export "\f3\bf\bf\bf") (result i32) (i32.const 139)) |
| (func (export "\f4\8f\bf\be") (result i32) (i32.const 140)) |
| (func (export "\f4\8f\bf\bf") (result i32) (i32.const 141)) |
| |
| ;; Test an interrobang with combining diacritical marks above. |
| ;; https://xkcd.com/1209/ |
| (func (export "̈‽̈̉") (result i32) (i32.const 142)) |
| |
| ;; Test that RLM/LRM don't change the logical byte order. |
| (func (export "abc") (result i32) (i32.const 143)) |
| (func (export "abc") (result i32) (i32.const 144)) |
| (func (export "cba") (result i32) (i32.const 145)) |
| (func (export "abc") (result i32) (i32.const 146)) |
| (func (export "cba") (result i32) (i32.const 147)) |
| |
| ;; Test that Unicode font variations are preserved. |
| (func (export "𝑨") (result i32) (i32.const 148)) |
| (func (export "𝐴") (result i32) (i32.const 149)) |
| (func (export "𝘈") (result i32) (i32.const 150)) |
| (func (export "𝘼") (result i32) (i32.const 151)) |
| (func (export "𝐀") (result i32) (i32.const 152)) |
| (func (export "𝓐") (result i32) (i32.const 153)) |
| (func (export "𝕬") (result i32) (i32.const 154)) |
| (func (export "𝗔") (result i32) (i32.const 155)) |
| (func (export "𝒜") (result i32) (i32.const 156)) |
| (func (export "𝔄") (result i32) (i32.const 157)) |
| (func (export "𝔸") (result i32) (i32.const 158)) |
| (func (export "𝖠") (result i32) (i32.const 159)) |
| (func (export "𝙰") (result i32) (i32.const 160)) |
| (func (export "ᴀ") (result i32) (i32.const 161)) |
| |
| ;; Test that various additional letter variations are preserved. |
| ;; (U+0040, U+0061, U+0041, U+00C5, U+0041 U+030A, U+212B, and the font |
| ;; variations are covered above.) |
| (func (export "ᴬ") (result i32) (i32.const 162)) |
| (func (export "Ⓐ") (result i32) (i32.const 163)) |
| (func (export "A") (result i32) (i32.const 164)) |
| (func (export "🄐") (result i32) (i32.const 165)) |
| (func (export "🄰") (result i32) (i32.const 166)) |
| (func (export "") (result i32) (i32.const 167)) |
| (func (export "U+0041") (result i32) (i32.const 168)) |
| (func (export "A") (result i32) (i32.const 169)) |
| (func (export "А") (result i32) (i32.const 170)) |
| (func (export "Ꙗ") (result i32) (i32.const 171)) |
| (func (export "ⷼ") (result i32) (i32.const 172)) |
| (func (export "ⷶ") (result i32) (i32.const 173)) |
| (func (export "Ɐ") (result i32) (i32.const 174)) |
| (func (export "🅐") (result i32) (i32.const 175)) |
| (func (export "🅰") (result i32) (i32.const 176)) |
| (func (export "Ⱝ") (result i32) (i32.const 177)) |
| (func (export "𐐂") (result i32) (i32.const 178)) |
| (func (export "𐐈") (result i32) (i32.const 179)) |
| (func (export "𐒰") (result i32) (i32.const 180)) |
| (func (export "À") (result i32) (i32.const 181)) |
| (func (export "Á") (result i32) (i32.const 182)) |
| (func (export "Â") (result i32) (i32.const 183)) |
| (func (export "Ã") (result i32) (i32.const 184)) |
| (func (export "Ä") (result i32) (i32.const 185)) |
| (func (export "Ā") (result i32) (i32.const 186)) |
| (func (export "Ă") (result i32) (i32.const 187)) |
| (func (export "Ą") (result i32) (i32.const 188)) |
| (func (export "Ǎ") (result i32) (i32.const 189)) |
| (func (export "Ǟ") (result i32) (i32.const 190)) |
| (func (export "Ǡ") (result i32) (i32.const 191)) |
| (func (export "Ǻ") (result i32) (i32.const 192)) |
| (func (export "Ȁ") (result i32) (i32.const 193)) |
| (func (export "Ȃ") (result i32) (i32.const 194)) |
| (func (export "Ȧ") (result i32) (i32.const 195)) |
| (func (export "Ⱥ") (result i32) (i32.const 196)) |
| (func (export "Ӑ") (result i32) (i32.const 197)) |
| (func (export "Ӓ") (result i32) (i32.const 198)) |
| (func (export "ߊ") (result i32) (i32.const 199)) |
| (func (export "ࠡ") (result i32) (i32.const 200)) |
| (func (export "ࠢ") (result i32) (i32.const 201)) |
| (func (export "ࠣ") (result i32) (i32.const 202)) |
| (func (export "ࠤ") (result i32) (i32.const 203)) |
| (func (export "ࠥ") (result i32) (i32.const 204)) |
| (func (export "ऄ") (result i32) (i32.const 205)) |
| (func (export "अ") (result i32) (i32.const 206)) |
| (func (export "ॲ") (result i32) (i32.const 207)) |
| (func (export "অ") (result i32) (i32.const 208)) |
| (func (export "ਅ") (result i32) (i32.const 209)) |
| (func (export "અ") (result i32) (i32.const 210)) |
| (func (export "ଅ") (result i32) (i32.const 211)) |
| (func (export "அ") (result i32) (i32.const 212)) |
| (func (export "అ") (result i32) (i32.const 213)) |
| (func (export "ಅ") (result i32) (i32.const 214)) |
| (func (export "അ") (result i32) (i32.const 215)) |
| (func (export "ะ") (result i32) (i32.const 216)) |
| (func (export "ະ") (result i32) (i32.const 217)) |
| (func (export "༁") (result i32) (i32.const 218)) |
| (func (export "ཨ") (result i32) (i32.const 219)) |
| (func (export "ྸ") (result i32) (i32.const 220)) |
| (func (export "အ") (result i32) (i32.const 221)) |
| (func (export "ဢ") (result i32) (i32.const 222)) |
| (func (export "ႜ") (result i32) (i32.const 223)) |
| (func (export "ᅡ") (result i32) (i32.const 224)) |
| (func (export "አ") (result i32) (i32.const 225)) |
| (func (export "ዐ") (result i32) (i32.const 226)) |
| (func (export "Ꭰ") (result i32) (i32.const 227)) |
| (func (export "ᐊ") (result i32) (i32.const 228)) |
| (func (export "ᖳ") (result i32) (i32.const 229)) |
| (func (export "ᚨ") (result i32) (i32.const 230)) |
| (func (export "ᚪ") (result i32) (i32.const 231)) |
| (func (export "ᛆ") (result i32) (i32.const 232)) |
| (func (export "ᜀ") (result i32) (i32.const 233)) |
| (func (export "ᜠ") (result i32) (i32.const 234)) |
| (func (export "ᝀ") (result i32) (i32.const 235)) |
| (func (export "ᝠ") (result i32) (i32.const 236)) |
| (func (export "ᠠ") (result i32) (i32.const 237)) |
| (func (export "ᢇ") (result i32) (i32.const 238)) |
| (func (export "ᤠ") (result i32) (i32.const 239)) |
| (func (export "ᥣ") (result i32) (i32.const 240)) |
| (func (export "ᨕ") (result i32) (i32.const 241)) |
| (func (export "ᩋ") (result i32) (i32.const 242)) |
| (func (export "ᩡ") (result i32) (i32.const 243)) |
| (func (export "ᮃ") (result i32) (i32.const 244)) |
| (func (export "ᯀ") (result i32) (i32.const 245)) |
| (func (export "ᯁ") (result i32) (i32.const 246)) |
| (func (export "ᰣ") (result i32) (i32.const 247)) |
| (func (export "Ḁ") (result i32) (i32.const 248)) |
| (func (export "Ạ") (result i32) (i32.const 249)) |
| (func (export "Ả") (result i32) (i32.const 250)) |
| (func (export "Ấ") (result i32) (i32.const 251)) |
| (func (export "Ầ") (result i32) (i32.const 252)) |
| (func (export "Ẩ") (result i32) (i32.const 253)) |
| (func (export "Ẫ") (result i32) (i32.const 254)) |
| (func (export "Ậ") (result i32) (i32.const 255)) |
| (func (export "Ắ") (result i32) (i32.const 256)) |
| (func (export "Ằ") (result i32) (i32.const 257)) |
| (func (export "Ẳ") (result i32) (i32.const 258)) |
| (func (export "Ẵ") (result i32) (i32.const 259)) |
| (func (export "Ặ") (result i32) (i32.const 260)) |
| (func (export "あ") (result i32) (i32.const 261)) |
| (func (export "ア") (result i32) (i32.const 262)) |
| (func (export "ㄚ") (result i32) (i32.const 263)) |
| (func (export "ㅏ") (result i32) (i32.const 264)) |
| (func (export "㈎") (result i32) (i32.const 265)) |
| (func (export "㈏") (result i32) (i32.const 266)) |
| (func (export "㈐") (result i32) (i32.const 267)) |
| (func (export "㈑") (result i32) (i32.const 268)) |
| (func (export "㈒") (result i32) (i32.const 269)) |
| (func (export "㈓") (result i32) (i32.const 270)) |
| (func (export "㈔") (result i32) (i32.const 271)) |
| (func (export "㈕") (result i32) (i32.const 272)) |
| (func (export "㈖") (result i32) (i32.const 273)) |
| (func (export "㈗") (result i32) (i32.const 274)) |
| (func (export "㈘") (result i32) (i32.const 275)) |
| (func (export "㈙") (result i32) (i32.const 276)) |
| (func (export "㈚") (result i32) (i32.const 277)) |
| (func (export "㈛") (result i32) (i32.const 278)) |
| (func (export "㉮") (result i32) (i32.const 279)) |
| (func (export "㉯") (result i32) (i32.const 280)) |
| (func (export "㉰") (result i32) (i32.const 281)) |
| (func (export "㉱") (result i32) (i32.const 282)) |
| (func (export "㉲") (result i32) (i32.const 283)) |
| (func (export "㉳") (result i32) (i32.const 284)) |
| (func (export "㉴") (result i32) (i32.const 285)) |
| (func (export "㉵") (result i32) (i32.const 286)) |
| (func (export "㉶") (result i32) (i32.const 287)) |
| (func (export "㉷") (result i32) (i32.const 288)) |
| (func (export "㉸") (result i32) (i32.const 289)) |
| (func (export "㉹") (result i32) (i32.const 290)) |
| (func (export "㉺") (result i32) (i32.const 291)) |
| (func (export "㉻") (result i32) (i32.const 292)) |
| (func (export "㋐") (result i32) (i32.const 293)) |
| (func (export "ꀊ") (result i32) (i32.const 294)) |
| (func (export "ꓮ") (result i32) (i32.const 295)) |
| (func (export "ꕉ") (result i32) (i32.const 296)) |
| (func (export "ꚠ") (result i32) (i32.const 297)) |
| (func (export "ꠀ") (result i32) (i32.const 298)) |
| (func (export "ꠣ") (result i32) (i32.const 299)) |
| (func (export "ꡝ") (result i32) (i32.const 300)) |
| (func (export "ꢂ") (result i32) (i32.const 301)) |
| (func (export "꣪") (result i32) (i32.const 302)) |
| (func (export "ꤢ") (result i32) (i32.const 303)) |
| (func (export "ꥆ") (result i32) (i32.const 304)) |
| (func (export "ꦄ") (result i32) (i32.const 305)) |
| (func (export "ꨀ") (result i32) (i32.const 306)) |
| (func (export "ア") (result i32) (i32.const 307)) |
| (func (export "ᅡ") (result i32) (i32.const 308)) |
| (func (export "𐀀") (result i32) (i32.const 309)) |
| (func (export "𐊀") (result i32) (i32.const 310)) |
| (func (export "𐊠") (result i32) (i32.const 311)) |
| (func (export "𐌀") (result i32) (i32.const 312)) |
| (func (export "𐎠") (result i32) (i32.const 313)) |
| (func (export "𐒖") (result i32) (i32.const 314)) |
| (func (export "𐔀") (result i32) (i32.const 315)) |
| (func (export "𐝀") (result i32) (i32.const 316)) |
| (func (export "𐠀") (result i32) (i32.const 317)) |
| (func (export "𐤠") (result i32) (i32.const 318)) |
| (func (export "𐦀") (result i32) (i32.const 319)) |
| (func (export "𐦠") (result i32) (i32.const 320)) |
| (func (export "𐨀") (result i32) (i32.const 321)) |
| (func (export "𐬀") (result i32) (i32.const 322)) |
| (func (export "𐰀") (result i32) (i32.const 323)) |
| (func (export "𐰁") (result i32) (i32.const 324)) |
| (func (export "𐲀") (result i32) (i32.const 325)) |
| (func (export "𑀅") (result i32) (i32.const 326)) |
| (func (export "𑂃") (result i32) (i32.const 327)) |
| (func (export "𑄧") (result i32) (i32.const 328)) |
| (func (export "𑅐") (result i32) (i32.const 329)) |
| (func (export "𑆃") (result i32) (i32.const 330)) |
| (func (export "𑈀") (result i32) (i32.const 331)) |
| (func (export "𑊀") (result i32) (i32.const 332)) |
| (func (export "𑊰") (result i32) (i32.const 333)) |
| (func (export "𑌅") (result i32) (i32.const 334)) |
| (func (export "𑍰") (result i32) (i32.const 335)) |
| (func (export "𑐀") (result i32) (i32.const 336)) |
| (func (export "𑒁") (result i32) (i32.const 337)) |
| (func (export "𑖀") (result i32) (i32.const 338)) |
| (func (export "𑘀") (result i32) (i32.const 339)) |
| (func (export "𑚀") (result i32) (i32.const 340)) |
| (func (export "𑜒") (result i32) (i32.const 341)) |
| (func (export "𑜠") (result i32) (i32.const 342)) |
| (func (export "𑢡") (result i32) (i32.const 343)) |
| (func (export "𑫕") (result i32) (i32.const 344)) |
| (func (export "𑰀") (result i32) (i32.const 345)) |
| (func (export "𑲏") (result i32) (i32.const 346)) |
| (func (export "𑲯") (result i32) (i32.const 347)) |
| (func (export "𒀀") (result i32) (i32.const 348)) |
| (func (export "𖧕") (result i32) (i32.const 349)) |
| (func (export "𖩆") (result i32) (i32.const 350)) |
| (func (export "𖫧") (result i32) (i32.const 351)) |
| (func (export "𖽔") (result i32) (i32.const 352)) |
| (func (export "𛱁") (result i32) (i32.const 353)) |
| (func (export "𛱤") (result i32) (i32.const 354)) |
| (func (export "𞠣") (result i32) (i32.const 355)) |
| (func (export "🇦") (result i32) (i32.const 356)) |
| (func (export "Ɑ") (result i32) (i32.const 357)) |
| (func (export "Λ") (result i32) (i32.const 358)) |
| (func (export "Ɒ") (result i32) (i32.const 359)) |
| (func (export "ª") (result i32) (i32.const 360)) |
| (func (export "∀") (result i32) (i32.const 361)) |
| (func (export "₳") (result i32) (i32.const 362)) |
| (func (export "𐤀") (result i32) (i32.const 363)) |
| (func (export "Ⲁ") (result i32) (i32.const 364)) |
| (func (export "𐌰") (result i32) (i32.const 365)) |
| (func (export "Ά") (result i32) (i32.const 366)) |
| (func (export "Α") (result i32) (i32.const 367)) |
| (func (export "Ἀ") (result i32) (i32.const 368)) |
| (func (export "Ἁ") (result i32) (i32.const 369)) |
| (func (export "Ἂ") (result i32) (i32.const 370)) |
| (func (export "Ἃ") (result i32) (i32.const 371)) |
| (func (export "Ἄ") (result i32) (i32.const 372)) |
| (func (export "Ἅ") (result i32) (i32.const 373)) |
| (func (export "Ἆ") (result i32) (i32.const 374)) |
| (func (export "Ἇ") (result i32) (i32.const 375)) |
| (func (export "ᾈ") (result i32) (i32.const 376)) |
| (func (export "ᾉ") (result i32) (i32.const 377)) |
| (func (export "ᾊ") (result i32) (i32.const 378)) |
| (func (export "ᾋ") (result i32) (i32.const 379)) |
| (func (export "ᾌ") (result i32) (i32.const 380)) |
| (func (export "ᾍ") (result i32) (i32.const 381)) |
| (func (export "ᾎ") (result i32) (i32.const 382)) |
| (func (export "ᾏ") (result i32) (i32.const 383)) |
| (func (export "Ᾰ") (result i32) (i32.const 384)) |
| (func (export "Ᾱ") (result i32) (i32.const 385)) |
| (func (export "Ὰ") (result i32) (i32.const 386)) |
| (func (export "Ά") (result i32) (i32.const 387)) |
| (func (export "ᾼ") (result i32) (i32.const 388)) |
| (func (export "𝚨") (result i32) (i32.const 389)) |
| (func (export "𝛢") (result i32) (i32.const 390)) |
| (func (export "𝜜") (result i32) (i32.const 391)) |
| (func (export "𝝖") (result i32) (i32.const 392)) |
| (func (export "𝞐") (result i32) (i32.const 393)) |
| (func (export "⍶") (result i32) (i32.const 394)) |
| (func (export "⍺") (result i32) (i32.const 395)) |
| (func (export "⩜") (result i32) (i32.const 396)) |
| (func (export "ᗅ") (result i32) (i32.const 397)) |
| (func (export "Ꭺ") (result i32) (i32.const 398)) |
| |
| ;; Test unmatched "closing" and "opening" code points. |
| (func (export ")˺˼𔗏⁾₎❩❫⟯﴿︶﹚)⦆❳❵⟧⟩⟫⟭⦈⦊⦖⸣⸥︘︸︺︼︾﹀﹂﹄﹈﹜﹞]}」»’”›❯") (result i32) (i32.const 399)) |
| (func (export "(˹˻𔗎⁽₍❨❪⟮﴾︵﹙(⦅❲❴⟦⟨⟪⟬⦇⦉⦕⸢⸤︗︷︹︻︽︿﹁﹃﹇﹛﹝[{「«‘“‹❮") (result i32) (i32.const 400)) |
| (func (export "𝪋𝪤") (result i32) (i32.const 401)) |
| (func (export "𝪋") (result i32) (i32.const 402)) |
| |
| ;; Test that Unicode fraction normalization is not applied. |
| (func (export "½") (result i32) (i32.const 403)) |
| (func (export "1⁄2") (result i32) (i32.const 404)) |
| (func (export "1/2") (result i32) (i32.const 405)) |
| (func (export "୳") (result i32) (i32.const 406)) |
| (func (export "൴") (result i32) (i32.const 407)) |
| (func (export "⳽") (result i32) (i32.const 408)) |
| (func (export "꠱") (result i32) (i32.const 409)) |
| (func (export "𐅁") (result i32) (i32.const 410)) |
| (func (export "𐅵") (result i32) (i32.const 411)) |
| (func (export "𐅶") (result i32) (i32.const 412)) |
| (func (export "𐦽") (result i32) (i32.const 413)) |
| (func (export "𐹻") (result i32) (i32.const 414)) |
| |
| ;; Test a full-width quote. |
| (func (export """) (result i32) (i32.const 415)) |
| |
| ;; Test that different present and historical representations of the "delete" |
| ;; concept are distinct. |
| (func (export "\7f") (result i32) (i32.const 416)) |
| (func (export "\08") (result i32) (i32.const 417)) |
| (func (export "⌫") (result i32) (i32.const 418)) |
| (func (export "⌦") (result i32) (i32.const 419)) |
| (func (export "␈") (result i32) (i32.const 420)) |
| (func (export "␡") (result i32) (i32.const 421)) |
| (func (export "᷻") (result i32) (i32.const 422)) |
| (func (export "\0f") (result i32) (i32.const 423)) |
| (func (export "←") (result i32) (i32.const 424)) |
| (func (export "⌧") (result i32) (i32.const 425)) |
| (func (export "⍒") (result i32) (i32.const 426)) |
| (func (export "⍔") (result i32) (i32.const 427)) |
| (func (export "⍢") (result i32) (i32.const 428)) |
| (func (export "⍫") (result i32) (i32.const 429)) |
| |
| ;; Test that different representations of the "substitute" concept are |
| ;; distinct. (U+FFFD is covered above.) |
| (func (export "\1a") (result i32) (i32.const 430)) |
| (func (export "␦") (result i32) (i32.const 431)) |
| (func (export "␚") (result i32) (i32.const 432)) |
| (func (export "") (result i32) (i32.const 433)) |
| (func (export "?") (result i32) (i32.const 434)) |
| (func (export "¿") (result i32) (i32.const 435)) |
| (func (export "᥅") (result i32) (i32.const 436)) |
| (func (export ";") (result i32) (i32.const 437)) |
| (func (export "՞") (result i32) (i32.const 438)) |
| (func (export "؟") (result i32) (i32.const 439)) |
| (func (export "፧") (result i32) (i32.const 440)) |
| (func (export "⁇") (result i32) (i32.const 441)) |
| (func (export "⍰") (result i32) (i32.const 442)) |
| (func (export "❓") (result i32) (i32.const 443)) |
| (func (export "❔") (result i32) (i32.const 444)) |
| (func (export "⳺") (result i32) (i32.const 445)) |
| (func (export "⳻") (result i32) (i32.const 446)) |
| (func (export "⸮") (result i32) (i32.const 447)) |
| (func (export "㉄") (result i32) (i32.const 448)) |
| (func (export "꘏") (result i32) (i32.const 449)) |
| (func (export "꛷") (result i32) (i32.const 450)) |
| (func (export "︖") (result i32) (i32.const 451)) |
| (func (export "﹖") (result i32) (i32.const 452)) |
| (func (export "?") (result i32) (i32.const 453)) |
| (func (export "𑅃") (result i32) (i32.const 454)) |
| (func (export "𞥟") (result i32) (i32.const 455)) |
| (func (export "") (result i32) (i32.const 456)) |
| (func (export "𖡄") (result i32) (i32.const 457)) |
| (func (export "⯑") (result i32) (i32.const 458)) |
| |
| ;; Test that different present and historical representations of the |
| ;; "paragraph" concept are distinct. (U+2029 is covered above). |
| (func (export "¶") (result i32) (i32.const 459)) |
| (func (export "⁋") (result i32) (i32.const 460)) |
| (func (export "܀") (result i32) (i32.const 461)) |
| (func (export "჻") (result i32) (i32.const 462)) |
| (func (export "፨") (result i32) (i32.const 463)) |
| (func (export "〷") (result i32) (i32.const 464)) |
| (func (export "❡") (result i32) (i32.const 465)) |
| (func (export "⸏") (result i32) (i32.const 466)) |
| (func (export "⸐") (result i32) (i32.const 467)) |
| (func (export "⸑") (result i32) (i32.const 468)) |
| (func (export "⸎") (result i32) (i32.const 469)) |
| (func (export "\14") (result i32) (i32.const 470)) ;; ¶ in CP437 |
| (func (export "☙") (result i32) (i32.const 471)) |
| ) |
| |
| (assert_return (invoke "") (i32.const 0)) |
| (assert_return (invoke "0") (i32.const 1)) |
| (assert_return (invoke "-0") (i32.const 2)) |
| (assert_return (invoke "_") (i32.const 3)) |
| (assert_return (invoke "$") (i32.const 4)) |
| (assert_return (invoke "@") (i32.const 5)) |
| (assert_return (invoke "~!@#$%^&*()_+`-={}|[]\\:\";'<>?,./ ") (i32.const 6)) |
| (assert_return (invoke "NaN") (i32.const 7)) |
| (assert_return (invoke "Infinity") (i32.const 8)) |
| (assert_return (invoke "if") (i32.const 9)) |
| (assert_return (invoke "malloc") (i32.const 10)) |
| (assert_return (invoke "_malloc") (i32.const 11)) |
| (assert_return (invoke "__malloc") (i32.const 12)) |
| (assert_return (invoke "a") (i32.const 13)) |
| (assert_return (invoke "A") (i32.const 14)) |
| (assert_return (invoke "") (i32.const 15)) |
| (assert_return (invoke "Å") (i32.const 16)) |
| (assert_return (invoke "Å") (i32.const 17)) |
| (assert_return (invoke "Å") (i32.const 18)) |
| (assert_return (invoke "ffi") (i32.const 19)) |
| (assert_return (invoke "ffi") (i32.const 20)) |
| (assert_return (invoke "ffi") (i32.const 21)) |
| (assert_return (invoke "\00\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f") (i32.const 22)) |
| (assert_return (invoke "\10\11\12\13\14\15\16\17\18\19\1a\1b\1c\1d\1e\1f") (i32.const 23)) |
| (assert_return (invoke " \7f") (i32.const 24)) |
| (assert_return (invoke "\c2\80\c2\81\c2\82\c2\83\c2\84\c2\85\c2\86\c2\87\c2\88\c2\89\c2\8a\c2\8b\c2\8c\c2\8d\c2\8e\c2\8f") (i32.const 25)) |
| (assert_return (invoke "\c2\90\c2\91\c2\92\c2\93\c2\94\c2\95\c2\96\c2\97\c2\98\c2\99\c2\9a\c2\9b\c2\9c\c2\9d\c2\9e\c2\9f") (i32.const 26)) |
| (assert_return (invoke "\ef\bf\b0\ef\bf\b1\ef\bf\b2\ef\bf\b3\ef\bf\b4\ef\bf\b5\ef\bf\b6\ef\bf\b7") (i32.const 27)) |
| (assert_return (invoke "\ef\bf\b8\ef\bf\b9\ef\bf\ba\ef\bf\bb\ef\bf\bc\ef\bf\bd\ef\bf\be\ef\bf\bf") (i32.const 28)) |
| (assert_return (invoke "␀␁␂␃␄␅␆␇␈␉␊␋␌␍␎␏") (i32.const 29)) |
| (assert_return (invoke "␐␑␒␓␔␕␖␗␘␙␚␛␜␝␞␟") (i32.const 30)) |
| (assert_return (invoke "␠␡") (i32.const 31)) |
| (assert_return (invoke "�") (i32.const 32)) |
| (assert_return (invoke "") (i32.const 33)) |
| (assert_return (invoke "") (i32.const 34)) |
| (assert_return (invoke "͏") (i32.const 35)) |
| (assert_return (invoke "") (i32.const 36)) |
| (assert_return (invoke "⵿") (i32.const 37)) |
| (assert_return (invoke "𑁿") (i32.const 38)) |
| (assert_return (invoke "") (i32.const 39)) |
| (assert_return (invoke " ") (i32.const 40)) |
| (assert_return (invoke "‑
") (i32.const 41)) |
| (assert_return (invoke "") (i32.const 42)) |
| (assert_return (invoke "") (i32.const 43)) |
| (assert_return (invoke "𐀀") (i32.const 44)) |
| (assert_return (invoke "Z̴͇̫̥̪͓͈͔͎̗̞̺̯̱̞̙̱̜̖̠̏͆̆͛͌͘͞ḁ̶̰̳̭͙̲̱̹̝͎̼͗ͨ̎̄̆͗̿̀́͟͡l̶̷͉̩̹̫̝͖̙̲̼͇͚͍̮͎̥̞̈́͊͗ͦ̈́ͫ̇́̚ͅͅg̶͕͔͚̩̓̐̅ͮ̔̐̎̂̏̾͊̍͋͊ͧ́̆ͦ͞o̡͋̔͐ͪͩ͏̢̧̫̙̤̮͖͙͓̺̜̩̼̘̠́") (i32.const 45)) |
| (assert_return (invoke "ᅟᅠㅤᅠ") (i32.const 46)) |
| (assert_return (invoke "︀") (i32.const 47)) |
| (assert_return (invoke "︄") (i32.const 48)) |
| (assert_return (invoke "󠄀") (i32.const 49)) |
| (assert_return (invoke "󠇯") (i32.const 50)) |
| (assert_return (invoke "̈") (i32.const 51)) |
| (assert_return (invoke "\0a") (i32.const 52)) |
| (assert_return (invoke "") (i32.const 53)) |
| (assert_return (invoke "
") (i32.const 54)) |
| (assert_return (invoke "\0d") (i32.const 55)) |
| (assert_return (invoke "\0d\0a") (i32.const 56)) |
| (assert_return (invoke "\0a\0d") (i32.const 57)) |
| (assert_return (invoke "\1e") (i32.const 58)) |
| (assert_return (invoke "\0b") (i32.const 59)) |
| (assert_return (invoke "\0c") (i32.const 60)) |
| (assert_return (invoke "\c2\85") (i32.const 61)) |
| (assert_return (invoke "
") (i32.const 62)) |
| (assert_return (invoke "…") (i32.const 63)) |
| (assert_return (invoke "⏎") (i32.const 64)) |
| (assert_return (invoke "\c2\8b") (i32.const 65)) |
| (assert_return (invoke "\c2\8c") (i32.const 66)) |
| (assert_return (invoke "\c2\8d") (i32.const 67)) |
| (assert_return (invoke "↵") (i32.const 68)) |
| (assert_return (invoke "↩") (i32.const 69)) |
| (assert_return (invoke "⌤") (i32.const 70)) |
| (assert_return (invoke "⤶") (i32.const 71)) |
| (assert_return (invoke "↲") (i32.const 72)) |
| (assert_return (invoke "⮨") (i32.const 73)) |
| (assert_return (invoke "⮰") (i32.const 74)) |
| (assert_return (invoke "�") (i32.const 75)) |
| (assert_return (invoke "\ef\b7\90") (i32.const 76)) |
| (assert_return (invoke "\ef\b7\91") (i32.const 77)) |
| (assert_return (invoke "\ef\b7\92") (i32.const 78)) |
| (assert_return (invoke "\ef\b7\93") (i32.const 79)) |
| (assert_return (invoke "\ef\b7\94") (i32.const 80)) |
| (assert_return (invoke "\ef\b7\95") (i32.const 81)) |
| (assert_return (invoke "\ef\b7\96") (i32.const 82)) |
| (assert_return (invoke "\ef\b7\97") (i32.const 83)) |
| (assert_return (invoke "\ef\b7\98") (i32.const 84)) |
| (assert_return (invoke "\ef\b7\99") (i32.const 85)) |
| (assert_return (invoke "\ef\b7\9a") (i32.const 86)) |
| (assert_return (invoke "\ef\b7\9b") (i32.const 87)) |
| (assert_return (invoke "\ef\b7\9c") (i32.const 88)) |
| (assert_return (invoke "\ef\b7\9d") (i32.const 89)) |
| (assert_return (invoke "\ef\b7\9e") (i32.const 90)) |
| (assert_return (invoke "\ef\b7\9f") (i32.const 91)) |
| (assert_return (invoke "\ef\b7\a0") (i32.const 92)) |
| (assert_return (invoke "\ef\b7\a1") (i32.const 93)) |
| (assert_return (invoke "\ef\b7\a2") (i32.const 94)) |
| (assert_return (invoke "\ef\b7\a3") (i32.const 95)) |
| (assert_return (invoke "\ef\b7\a4") (i32.const 96)) |
| (assert_return (invoke "\ef\b7\a5") (i32.const 97)) |
| (assert_return (invoke "\ef\b7\a6") (i32.const 98)) |
| (assert_return (invoke "\ef\b7\a7") (i32.const 99)) |
| (assert_return (invoke "\ef\b7\a8") (i32.const 100)) |
| (assert_return (invoke "\ef\b7\a9") (i32.const 101)) |
| (assert_return (invoke "\ef\b7\aa") (i32.const 102)) |
| (assert_return (invoke "\ef\b7\ab") (i32.const 103)) |
| (assert_return (invoke "\ef\b7\ac") (i32.const 104)) |
| (assert_return (invoke "\ef\b7\ad") (i32.const 105)) |
| (assert_return (invoke "\ef\b7\ae") (i32.const 106)) |
| (assert_return (invoke "\ef\b7\af") (i32.const 107)) |
| (assert_return (invoke "\ef\bf\be") (i32.const 108)) |
| (assert_return (invoke "\ef\bf\bf") (i32.const 109)) |
| (assert_return (invoke "\f0\9f\bf\be") (i32.const 110)) |
| (assert_return (invoke "\f0\9f\bf\bf") (i32.const 111)) |
| (assert_return (invoke "\f0\af\bf\be") (i32.const 112)) |
| (assert_return (invoke "\f0\af\bf\bf") (i32.const 113)) |
| (assert_return (invoke "\f0\bf\bf\be") (i32.const 114)) |
| (assert_return (invoke "\f0\bf\bf\bf") (i32.const 115)) |
| (assert_return (invoke "\f1\8f\bf\be") (i32.const 116)) |
| (assert_return (invoke "\f1\8f\bf\bf") (i32.const 117)) |
| (assert_return (invoke "\f1\9f\bf\be") (i32.const 118)) |
| (assert_return (invoke "\f1\9f\bf\bf") (i32.const 119)) |
| (assert_return (invoke "\f1\af\bf\be") (i32.const 120)) |
| (assert_return (invoke "\f1\af\bf\bf") (i32.const 121)) |
| (assert_return (invoke "\f1\bf\bf\be") (i32.const 122)) |
| (assert_return (invoke "\f1\bf\bf\bf") (i32.const 123)) |
| (assert_return (invoke "\f2\8f\bf\be") (i32.const 124)) |
| (assert_return (invoke "\f2\8f\bf\bf") (i32.const 125)) |
| (assert_return (invoke "\f2\9f\bf\be") (i32.const 126)) |
| (assert_return (invoke "\f2\9f\bf\bf") (i32.const 127)) |
| (assert_return (invoke "\f2\af\bf\be") (i32.const 128)) |
| (assert_return (invoke "\f2\af\bf\bf") (i32.const 129)) |
| (assert_return (invoke "\f2\bf\bf\be") (i32.const 130)) |
| (assert_return (invoke "\f2\bf\bf\bf") (i32.const 131)) |
| (assert_return (invoke "\f3\8f\bf\be") (i32.const 132)) |
| (assert_return (invoke "\f3\8f\bf\bf") (i32.const 133)) |
| (assert_return (invoke "\f3\9f\bf\be") (i32.const 134)) |
| (assert_return (invoke "\f3\9f\bf\bf") (i32.const 135)) |
| (assert_return (invoke "\f3\af\bf\be") (i32.const 136)) |
| (assert_return (invoke "\f3\af\bf\bf") (i32.const 137)) |
| (assert_return (invoke "\f3\bf\bf\be") (i32.const 138)) |
| (assert_return (invoke "\f3\bf\bf\bf") (i32.const 139)) |
| (assert_return (invoke "\f4\8f\bf\be") (i32.const 140)) |
| (assert_return (invoke "\f4\8f\bf\bf") (i32.const 141)) |
| (assert_return (invoke "̈‽̈̉") (i32.const 142)) |
| (assert_return (invoke "abc") (i32.const 143)) |
| (assert_return (invoke "abc") (i32.const 144)) |
| (assert_return (invoke "cba") (i32.const 145)) |
| (assert_return (invoke "abc") (i32.const 146)) |
| (assert_return (invoke "cba") (i32.const 147)) |
| (assert_return (invoke "𝑨") (i32.const 148)) |
| (assert_return (invoke "𝐴") (i32.const 149)) |
| (assert_return (invoke "𝘈") (i32.const 150)) |
| (assert_return (invoke "𝘼") (i32.const 151)) |
| (assert_return (invoke "𝐀") (i32.const 152)) |
| (assert_return (invoke "𝓐") (i32.const 153)) |
| (assert_return (invoke "𝕬") (i32.const 154)) |
| (assert_return (invoke "𝗔") (i32.const 155)) |
| (assert_return (invoke "𝒜") (i32.const 156)) |
| (assert_return (invoke "𝔄") (i32.const 157)) |
| (assert_return (invoke "𝔸") (i32.const 158)) |
| (assert_return (invoke "𝖠") (i32.const 159)) |
| (assert_return (invoke "𝙰") (i32.const 160)) |
| (assert_return (invoke "ᴀ") (i32.const 161)) |
| (assert_return (invoke "ᴬ") (i32.const 162)) |
| (assert_return (invoke "Ⓐ") (i32.const 163)) |
| (assert_return (invoke "A") (i32.const 164)) |
| (assert_return (invoke "🄐") (i32.const 165)) |
| (assert_return (invoke "🄰") (i32.const 166)) |
| (assert_return (invoke "") (i32.const 167)) |
| (assert_return (invoke "U+0041") (i32.const 168)) |
| (assert_return (invoke "A") (i32.const 169)) |
| (assert_return (invoke "А") (i32.const 170)) |
| (assert_return (invoke "Ꙗ") (i32.const 171)) |
| (assert_return (invoke "ⷼ") (i32.const 172)) |
| (assert_return (invoke "ⷶ") (i32.const 173)) |
| (assert_return (invoke "Ɐ") (i32.const 174)) |
| (assert_return (invoke "🅐") (i32.const 175)) |
| (assert_return (invoke "🅰") (i32.const 176)) |
| (assert_return (invoke "Ⱝ") (i32.const 177)) |
| (assert_return (invoke "𐐂") (i32.const 178)) |
| (assert_return (invoke "𐐈") (i32.const 179)) |
| (assert_return (invoke "𐒰") (i32.const 180)) |
| (assert_return (invoke "À") (i32.const 181)) |
| (assert_return (invoke "Á") (i32.const 182)) |
| (assert_return (invoke "Â") (i32.const 183)) |
| (assert_return (invoke "Ã") (i32.const 184)) |
| (assert_return (invoke "Ä") (i32.const 185)) |
| (assert_return (invoke "Ā") (i32.const 186)) |
| (assert_return (invoke "Ă") (i32.const 187)) |
| (assert_return (invoke "Ą") (i32.const 188)) |
| (assert_return (invoke "Ǎ") (i32.const 189)) |
| (assert_return (invoke "Ǟ") (i32.const 190)) |
| (assert_return (invoke "Ǡ") (i32.const 191)) |
| (assert_return (invoke "Ǻ") (i32.const 192)) |
| (assert_return (invoke "Ȁ") (i32.const 193)) |
| (assert_return (invoke "Ȃ") (i32.const 194)) |
| (assert_return (invoke "Ȧ") (i32.const 195)) |
| (assert_return (invoke "Ⱥ") (i32.const 196)) |
| (assert_return (invoke "Ӑ") (i32.const 197)) |
| (assert_return (invoke "Ӓ") (i32.const 198)) |
| (assert_return (invoke "ߊ") (i32.const 199)) |
| (assert_return (invoke "ࠡ") (i32.const 200)) |
| (assert_return (invoke "ࠢ") (i32.const 201)) |
| (assert_return (invoke "ࠣ") (i32.const 202)) |
| (assert_return (invoke "ࠤ") (i32.const 203)) |
| (assert_return (invoke "ࠥ") (i32.const 204)) |
| (assert_return (invoke "ऄ") (i32.const 205)) |
| (assert_return (invoke "अ") (i32.const 206)) |
| (assert_return (invoke "ॲ") (i32.const 207)) |
| (assert_return (invoke "অ") (i32.const 208)) |
| (assert_return (invoke "ਅ") (i32.const 209)) |
| (assert_return (invoke "અ") (i32.const 210)) |
| (assert_return (invoke "ଅ") (i32.const 211)) |
| (assert_return (invoke "அ") (i32.const 212)) |
| (assert_return (invoke "అ") (i32.const 213)) |
| (assert_return (invoke "ಅ") (i32.const 214)) |
| (assert_return (invoke "അ") (i32.const 215)) |
| (assert_return (invoke "ะ") (i32.const 216)) |
| (assert_return (invoke "ະ") (i32.const 217)) |
| (assert_return (invoke "༁") (i32.const 218)) |
| (assert_return (invoke "ཨ") (i32.const 219)) |
| (assert_return (invoke "ྸ") (i32.const 220)) |
| (assert_return (invoke "အ") (i32.const 221)) |
| (assert_return (invoke "ဢ") (i32.const 222)) |
| (assert_return (invoke "ႜ") (i32.const 223)) |
| (assert_return (invoke "ᅡ") (i32.const 224)) |
| (assert_return (invoke "አ") (i32.const 225)) |
| (assert_return (invoke "ዐ") (i32.const 226)) |
| (assert_return (invoke "Ꭰ") (i32.const 227)) |
| (assert_return (invoke "ᐊ") (i32.const 228)) |
| (assert_return (invoke "ᖳ") (i32.const 229)) |
| (assert_return (invoke "ᚨ") (i32.const 230)) |
| (assert_return (invoke "ᚪ") (i32.const 231)) |
| (assert_return (invoke "ᛆ") (i32.const 232)) |
| (assert_return (invoke "ᜀ") (i32.const 233)) |
| (assert_return (invoke "ᜠ") (i32.const 234)) |
| (assert_return (invoke "ᝀ") (i32.const 235)) |
| (assert_return (invoke "ᝠ") (i32.const 236)) |
| (assert_return (invoke "ᠠ") (i32.const 237)) |
| (assert_return (invoke "ᢇ") (i32.const 238)) |
| (assert_return (invoke "ᤠ") (i32.const 239)) |
| (assert_return (invoke "ᥣ") (i32.const 240)) |
| (assert_return (invoke "ᨕ") (i32.const 241)) |
| (assert_return (invoke "ᩋ") (i32.const 242)) |
| (assert_return (invoke "ᩡ") (i32.const 243)) |
| (assert_return (invoke "ᮃ") (i32.const 244)) |
| (assert_return (invoke "ᯀ") (i32.const 245)) |
| (assert_return (invoke "ᯁ") (i32.const 246)) |
| (assert_return (invoke "ᰣ") (i32.const 247)) |
| (assert_return (invoke "Ḁ") (i32.const 248)) |
| (assert_return (invoke "Ạ") (i32.const 249)) |
| (assert_return (invoke "Ả") (i32.const 250)) |
| (assert_return (invoke "Ấ") (i32.const 251)) |
| (assert_return (invoke "Ầ") (i32.const 252)) |
| (assert_return (invoke "Ẩ") (i32.const 253)) |
| (assert_return (invoke "Ẫ") (i32.const 254)) |
| (assert_return (invoke "Ậ") (i32.const 255)) |
| (assert_return (invoke "Ắ") (i32.const 256)) |
| (assert_return (invoke "Ằ") (i32.const 257)) |
| (assert_return (invoke "Ẳ") (i32.const 258)) |
| (assert_return (invoke "Ẵ") (i32.const 259)) |
| (assert_return (invoke "Ặ") (i32.const 260)) |
| (assert_return (invoke "あ") (i32.const 261)) |
| (assert_return (invoke "ア") (i32.const 262)) |
| (assert_return (invoke "ㄚ") (i32.const 263)) |
| (assert_return (invoke "ㅏ") (i32.const 264)) |
| (assert_return (invoke "㈎") (i32.const 265)) |
| (assert_return (invoke "㈏") (i32.const 266)) |
| (assert_return (invoke "㈐") (i32.const 267)) |
| (assert_return (invoke "㈑") (i32.const 268)) |
| (assert_return (invoke "㈒") (i32.const 269)) |
| (assert_return (invoke "㈓") (i32.const 270)) |
| (assert_return (invoke "㈔") (i32.const 271)) |
| (assert_return (invoke "㈕") (i32.const 272)) |
| (assert_return (invoke "㈖") (i32.const 273)) |
| (assert_return (invoke "㈗") (i32.const 274)) |
| (assert_return (invoke "㈘") (i32.const 275)) |
| (assert_return (invoke "㈙") (i32.const 276)) |
| (assert_return (invoke "㈚") (i32.const 277)) |
| (assert_return (invoke "㈛") (i32.const 278)) |
| (assert_return (invoke "㉮") (i32.const 279)) |
| (assert_return (invoke "㉯") (i32.const 280)) |
| (assert_return (invoke "㉰") (i32.const 281)) |
| (assert_return (invoke "㉱") (i32.const 282)) |
| (assert_return (invoke "㉲") (i32.const 283)) |
| (assert_return (invoke "㉳") (i32.const 284)) |
| (assert_return (invoke "㉴") (i32.const 285)) |
| (assert_return (invoke "㉵") (i32.const 286)) |
| (assert_return (invoke "㉶") (i32.const 287)) |
| (assert_return (invoke "㉷") (i32.const 288)) |
| (assert_return (invoke "㉸") (i32.const 289)) |
| (assert_return (invoke "㉹") (i32.const 290)) |
| (assert_return (invoke "㉺") (i32.const 291)) |
| (assert_return (invoke "㉻") (i32.const 292)) |
| (assert_return (invoke "㋐") (i32.const 293)) |
| (assert_return (invoke "ꀊ") (i32.const 294)) |
| (assert_return (invoke "ꓮ") (i32.const 295)) |
| (assert_return (invoke "ꕉ") (i32.const 296)) |
| (assert_return (invoke "ꚠ") (i32.const 297)) |
| (assert_return (invoke "ꠀ") (i32.const 298)) |
| (assert_return (invoke "ꠣ") (i32.const 299)) |
| (assert_return (invoke "ꡝ") (i32.const 300)) |
| (assert_return (invoke "ꢂ") (i32.const 301)) |
| (assert_return (invoke "꣪") (i32.const 302)) |
| (assert_return (invoke "ꤢ") (i32.const 303)) |
| (assert_return (invoke "ꥆ") (i32.const 304)) |
| (assert_return (invoke "ꦄ") (i32.const 305)) |
| (assert_return (invoke "ꨀ") (i32.const 306)) |
| (assert_return (invoke "ア") (i32.const 307)) |
| (assert_return (invoke "ᅡ") (i32.const 308)) |
| (assert_return (invoke "𐀀") (i32.const 309)) |
| (assert_return (invoke "𐊀") (i32.const 310)) |
| (assert_return (invoke "𐊠") (i32.const 311)) |
| (assert_return (invoke "𐌀") (i32.const 312)) |
| (assert_return (invoke "𐎠") (i32.const 313)) |
| (assert_return (invoke "𐒖") (i32.const 314)) |
| (assert_return (invoke "𐔀") (i32.const 315)) |
| (assert_return (invoke "𐝀") (i32.const 316)) |
| (assert_return (invoke "𐠀") (i32.const 317)) |
| (assert_return (invoke "𐤠") (i32.const 318)) |
| (assert_return (invoke "𐦀") (i32.const 319)) |
| (assert_return (invoke "𐦠") (i32.const 320)) |
| (assert_return (invoke "𐨀") (i32.const 321)) |
| (assert_return (invoke "𐬀") (i32.const 322)) |
| (assert_return (invoke "𐰀") (i32.const 323)) |
| (assert_return (invoke "𐰁") (i32.const 324)) |
| (assert_return (invoke "𐲀") (i32.const 325)) |
| (assert_return (invoke "𑀅") (i32.const 326)) |
| (assert_return (invoke "𑂃") (i32.const 327)) |
| (assert_return (invoke "𑄧") (i32.const 328)) |
| (assert_return (invoke "𑅐") (i32.const 329)) |
| (assert_return (invoke "𑆃") (i32.const 330)) |
| (assert_return (invoke "𑈀") (i32.const 331)) |
| (assert_return (invoke "𑊀") (i32.const 332)) |
| (assert_return (invoke "𑊰") (i32.const 333)) |
| (assert_return (invoke "𑌅") (i32.const 334)) |
| (assert_return (invoke "𑍰") (i32.const 335)) |
| (assert_return (invoke "𑐀") (i32.const 336)) |
| (assert_return (invoke "𑒁") (i32.const 337)) |
| (assert_return (invoke "𑖀") (i32.const 338)) |
| (assert_return (invoke "𑘀") (i32.const 339)) |
| (assert_return (invoke "𑚀") (i32.const 340)) |
| (assert_return (invoke "𑜒") (i32.const 341)) |
| (assert_return (invoke "𑜠") (i32.const 342)) |
| (assert_return (invoke "𑢡") (i32.const 343)) |
| (assert_return (invoke "𑫕") (i32.const 344)) |
| (assert_return (invoke "𑰀") (i32.const 345)) |
| (assert_return (invoke "𑲏") (i32.const 346)) |
| (assert_return (invoke "𑲯") (i32.const 347)) |
| (assert_return (invoke "𒀀") (i32.const 348)) |
| (assert_return (invoke "𖧕") (i32.const 349)) |
| (assert_return (invoke "𖩆") (i32.const 350)) |
| (assert_return (invoke "𖫧") (i32.const 351)) |
| (assert_return (invoke "𖽔") (i32.const 352)) |
| (assert_return (invoke "𛱁") (i32.const 353)) |
| (assert_return (invoke "𛱤") (i32.const 354)) |
| (assert_return (invoke "𞠣") (i32.const 355)) |
| (assert_return (invoke "🇦") (i32.const 356)) |
| (assert_return (invoke "Ɑ") (i32.const 357)) |
| (assert_return (invoke "Λ") (i32.const 358)) |
| (assert_return (invoke "Ɒ") (i32.const 359)) |
| (assert_return (invoke "ª") (i32.const 360)) |
| (assert_return (invoke "∀") (i32.const 361)) |
| (assert_return (invoke "₳") (i32.const 362)) |
| (assert_return (invoke "𐤀") (i32.const 363)) |
| (assert_return (invoke "Ⲁ") (i32.const 364)) |
| (assert_return (invoke "𐌰") (i32.const 365)) |
| (assert_return (invoke "Ά") (i32.const 366)) |
| (assert_return (invoke "Α") (i32.const 367)) |
| (assert_return (invoke "Ἀ") (i32.const 368)) |
| (assert_return (invoke "Ἁ") (i32.const 369)) |
| (assert_return (invoke "Ἂ") (i32.const 370)) |
| (assert_return (invoke "Ἃ") (i32.const 371)) |
| (assert_return (invoke "Ἄ") (i32.const 372)) |
| (assert_return (invoke "Ἅ") (i32.const 373)) |
| (assert_return (invoke "Ἆ") (i32.const 374)) |
| (assert_return (invoke "Ἇ") (i32.const 375)) |
| (assert_return (invoke "ᾈ") (i32.const 376)) |
| (assert_return (invoke "ᾉ") (i32.const 377)) |
| (assert_return (invoke "ᾊ") (i32.const 378)) |
| (assert_return (invoke "ᾋ") (i32.const 379)) |
| (assert_return (invoke "ᾌ") (i32.const 380)) |
| (assert_return (invoke "ᾍ") (i32.const 381)) |
| (assert_return (invoke "ᾎ") (i32.const 382)) |
| (assert_return (invoke "ᾏ") (i32.const 383)) |
| (assert_return (invoke "Ᾰ") (i32.const 384)) |
| (assert_return (invoke "Ᾱ") (i32.const 385)) |
| (assert_return (invoke "Ὰ") (i32.const 386)) |
| (assert_return (invoke "Ά") (i32.const 387)) |
| (assert_return (invoke "ᾼ") (i32.const 388)) |
| (assert_return (invoke "𝚨") (i32.const 389)) |
| (assert_return (invoke "𝛢") (i32.const 390)) |
| (assert_return (invoke "𝜜") (i32.const 391)) |
| (assert_return (invoke "𝝖") (i32.const 392)) |
| (assert_return (invoke "𝞐") (i32.const 393)) |
| (assert_return (invoke "⍶") (i32.const 394)) |
| (assert_return (invoke "⍺") (i32.const 395)) |
| (assert_return (invoke "⩜") (i32.const 396)) |
| (assert_return (invoke "ᗅ") (i32.const 397)) |
| (assert_return (invoke "Ꭺ") (i32.const 398)) |
| (assert_return (invoke ")˺˼𔗏⁾₎❩❫⟯﴿︶﹚)⦆❳❵⟧⟩⟫⟭⦈⦊⦖⸣⸥︘︸︺︼︾﹀﹂﹄﹈﹜﹞]}」»’”›❯") (i32.const 399)) |
| (assert_return (invoke "(˹˻𔗎⁽₍❨❪⟮﴾︵﹙(⦅❲❴⟦⟨⟪⟬⦇⦉⦕⸢⸤︗︷︹︻︽︿﹁﹃﹇﹛﹝[{「«‘“‹❮") (i32.const 400)) |
| (assert_return (invoke "𝪋𝪤") (i32.const 401)) |
| (assert_return (invoke "𝪋") (i32.const 402)) |
| (assert_return (invoke "½") (i32.const 403)) |
| (assert_return (invoke "1⁄2") (i32.const 404)) |
| (assert_return (invoke "1/2") (i32.const 405)) |
| (assert_return (invoke "୳") (i32.const 406)) |
| (assert_return (invoke "൴") (i32.const 407)) |
| (assert_return (invoke "⳽") (i32.const 408)) |
| (assert_return (invoke "꠱") (i32.const 409)) |
| (assert_return (invoke "𐅁") (i32.const 410)) |
| (assert_return (invoke "𐅵") (i32.const 411)) |
| (assert_return (invoke "𐅶") (i32.const 412)) |
| (assert_return (invoke "𐦽") (i32.const 413)) |
| (assert_return (invoke "𐹻") (i32.const 414)) |
| (assert_return (invoke """) (i32.const 415)) |
| (assert_return (invoke "\7f") (i32.const 416)) |
| (assert_return (invoke "\08") (i32.const 417)) |
| (assert_return (invoke "⌫") (i32.const 418)) |
| (assert_return (invoke "⌦") (i32.const 419)) |
| (assert_return (invoke "␈") (i32.const 420)) |
| (assert_return (invoke "␡") (i32.const 421)) |
| (assert_return (invoke "᷻") (i32.const 422)) |
| (assert_return (invoke "\0f") (i32.const 423)) |
| (assert_return (invoke "←") (i32.const 424)) |
| (assert_return (invoke "⌧") (i32.const 425)) |
| (assert_return (invoke "⍒") (i32.const 426)) |
| (assert_return (invoke "⍔") (i32.const 427)) |
| (assert_return (invoke "⍢") (i32.const 428)) |
| (assert_return (invoke "⍫") (i32.const 429)) |
| (assert_return (invoke "\1a") (i32.const 430)) |
| (assert_return (invoke "␦") (i32.const 431)) |
| (assert_return (invoke "␚") (i32.const 432)) |
| (assert_return (invoke "") (i32.const 433)) |
| (assert_return (invoke "?") (i32.const 434)) |
| (assert_return (invoke "¿") (i32.const 435)) |
| (assert_return (invoke "᥅") (i32.const 436)) |
| (assert_return (invoke ";") (i32.const 437)) |
| (assert_return (invoke "՞") (i32.const 438)) |
| (assert_return (invoke "؟") (i32.const 439)) |
| (assert_return (invoke "፧") (i32.const 440)) |
| (assert_return (invoke "⁇") (i32.const 441)) |
| (assert_return (invoke "⍰") (i32.const 442)) |
| (assert_return (invoke "❓") (i32.const 443)) |
| (assert_return (invoke "❔") (i32.const 444)) |
| (assert_return (invoke "⳺") (i32.const 445)) |
| (assert_return (invoke "⳻") (i32.const 446)) |
| (assert_return (invoke "⸮") (i32.const 447)) |
| (assert_return (invoke "㉄") (i32.const 448)) |
| (assert_return (invoke "꘏") (i32.const 449)) |
| (assert_return (invoke "꛷") (i32.const 450)) |
| (assert_return (invoke "︖") (i32.const 451)) |
| (assert_return (invoke "﹖") (i32.const 452)) |
| (assert_return (invoke "?") (i32.const 453)) |
| (assert_return (invoke "𑅃") (i32.const 454)) |
| (assert_return (invoke "𞥟") (i32.const 455)) |
| (assert_return (invoke "") (i32.const 456)) |
| (assert_return (invoke "𖡄") (i32.const 457)) |
| (assert_return (invoke "⯑") (i32.const 458)) |
| (assert_return (invoke "¶") (i32.const 459)) |
| (assert_return (invoke "⁋") (i32.const 460)) |
| (assert_return (invoke "܀") (i32.const 461)) |
| (assert_return (invoke "჻") (i32.const 462)) |
| (assert_return (invoke "፨") (i32.const 463)) |
| (assert_return (invoke "〷") (i32.const 464)) |
| (assert_return (invoke "❡") (i32.const 465)) |
| (assert_return (invoke "⸏") (i32.const 466)) |
| (assert_return (invoke "⸐") (i32.const 467)) |
| (assert_return (invoke "⸑") (i32.const 468)) |
| (assert_return (invoke "⸎") (i32.const 469)) |
| (assert_return (invoke "\14") (i32.const 470)) |
| (assert_return (invoke "☙") (i32.const 471)) |
| |
| (module |
| ;; Test that we can use indices instead of names to reference imports, |
| ;; exports, functions and parameters. |
| (import "spectest" "print_i32" (func (param i32))) |
| (func (import "spectest" "print_i32") (param i32)) |
| (func (param i32) (param i32) |
| (call 0 (get_local 0)) |
| (call 1 (get_local 1)) |
| ) |
| (export "print32" (func 2)) |
| ) |
| |
| (assert_return (invoke "print32" (i32.const 42) (i32.const 123))) |