1 2(********************************************************************) 3(* *) 4(* chkchr.sd7 Checks character properties *) 5(* Copyright (C) 2015, 2019 Thomas Mertes *) 6(* 2015 Arkadiy Kuleshov *) 7(* *) 8(* This program is free software; you can redistribute it and/or *) 9(* modify it under the terms of the GNU General Public License as *) 10(* published by the Free Software Foundation; either version 2 of *) 11(* the License, or (at your option) any later version. *) 12(* *) 13(* This program is distributed in the hope that it will be useful, *) 14(* but WITHOUT ANY WARRANTY; without even the implied warranty of *) 15(* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *) 16(* GNU General Public License for more details. *) 17(* *) 18(* You should have received a copy of the GNU General Public *) 19(* License along with this program; if not, write to the *) 20(* Free Software Foundation, Inc., 51 Franklin Street, *) 21(* Fifth Floor, Boston, MA 02110-1301, USA. *) 22(* *) 23(********************************************************************) 24 25 26$ include "seed7_05.s7i"; 27 include "stdio.s7i"; 28 29 30const func char: charExpr (in char: ch) is 31 return chr(ord(ch) + length(str(rand(1, 9))[2 ..])); 32 33 34const func boolean: boolExpr (in boolean: okay) is 35 return boolean(ord(okay) + length(str(rand(1, 9))[2 ..])); 36 37 38const proc: check_isLetter is func 39 local 40 var boolean: success is TRUE; 41 begin 42 if isLetter('\16#00020;') <> FALSE then writeln("isLetter( # 20 ) incorrect"); success := FALSE; end if; # SPACE 43 if isLetter('\16#00038;') <> FALSE then writeln("isLetter( # 38 ) incorrect"); success := FALSE; end if; # DIGIT EIGHT 44 if isLetter('\16#00050;') <> TRUE then writeln("isLetter( # 50 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER P 45 if isLetter('\16#0005f;') <> FALSE then writeln("isLetter( # 5f ) incorrect"); success := FALSE; end if; # LOW LINE 46 if isLetter('\16#00068;') <> TRUE then writeln("isLetter( # 68 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER H 47 if isLetter('\16#00080;') <> FALSE then writeln("isLetter( # 80 ) incorrect"); success := FALSE; end if; # <control-0080> 48 if isLetter('\16#000a0;') <> FALSE then writeln("isLetter( # a0 ) incorrect"); success := FALSE; end if; # NO-BREAK SPACE 49 if isLetter('\16#000c0;') <> TRUE then writeln("isLetter( # c0 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH GRAVE 50 if isLetter('\16#000e0;') <> TRUE then writeln("isLetter( # e0 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH GRAVE 51 if isLetter('\16#00100;') <> TRUE then writeln("isLetter( # 100 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH MACRON 52 if isLetter('\16#00120;') <> TRUE then writeln("isLetter( # 120 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER G WITH DOT ABOVE 53 if isLetter('\16#00140;') <> TRUE then writeln("isLetter( # 140 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER L WITH MIDDLE DOT 54 if isLetter('\16#00160;') <> TRUE then writeln("isLetter( # 160 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER S WITH CARON 55 if isLetter('\16#00180;') <> TRUE then writeln("isLetter( # 180 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER B WITH STROKE 56 if isLetter('\16#001b4;') <> TRUE then writeln("isLetter( # 1b4 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER Y WITH HOOK 57 if isLetter('\16#001e8;') <> TRUE then writeln("isLetter( # 1e8 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER K WITH CARON 58 if isLetter('\16#0021c;') <> TRUE then writeln("isLetter( # 21c ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER YOGH 59 if isLetter('\16#00250;') <> TRUE then writeln("isLetter( # 250 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER TURNED A 60 if isLetter('\16#00268;') <> TRUE then writeln("isLetter( # 268 ) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH STROKE 61 if isLetter('\16#00280;') <> TRUE then writeln("isLetter( # 280 ) incorrect"); success := FALSE; end if; # LATIN LETTER SMALL CAPITAL R 62 if isLetter('\16#00298;') <> TRUE then writeln("isLetter( # 298 ) incorrect"); success := FALSE; end if; # LATIN LETTER BILABIAL CLICK 63 if isLetter('\16#002b0;') <> TRUE then writeln("isLetter( # 2b0 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER SMALL H 64 if isLetter('\16#002c4;') <> FALSE then writeln("isLetter( # 2c4 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER UP ARROWHEAD 65 if isLetter('\16#002d8;') <> FALSE then writeln("isLetter( # 2d8 ) incorrect"); success := FALSE; end if; # BREVE 66 if isLetter('\16#002ec;') <> FALSE then writeln("isLetter( # 2ec ) incorrect"); success := FALSE; end if; # MODIFIER LETTER VOICING 67 if isLetter('\16#00300;') <> FALSE then writeln("isLetter( # 300 ) incorrect"); success := FALSE; end if; # COMBINING GRAVE ACCENT 68 if isLetter('\16#0031c;') <> FALSE then writeln("isLetter( # 31c ) incorrect"); success := FALSE; end if; # COMBINING LEFT HALF RING BELOW 69 if isLetter('\16#00338;') <> FALSE then writeln("isLetter( # 338 ) incorrect"); success := FALSE; end if; # COMBINING LONG SOLIDUS OVERLAY 70 if isLetter('\16#00354;') <> FALSE then writeln("isLetter( # 354 ) incorrect"); success := FALSE; end if; # COMBINING LEFT ARROWHEAD BELOW 71 if isLetter('\16#00370;') <> FALSE then writeln("isLetter( # 370 ) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER HETA 72 if isLetter('\16#00394;') <> TRUE then writeln("isLetter( # 394 ) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER DELTA 73 if isLetter('\16#003b8;') <> TRUE then writeln("isLetter( # 3b8 ) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER THETA 74 if isLetter('\16#003dc;') <> TRUE then writeln("isLetter( # 3dc ) incorrect"); success := FALSE; end if; # GREEK LETTER DIGAMMA 75 if isLetter('\16#00400;') <> TRUE then writeln("isLetter( # 400 ) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER IE WITH GRAVE 76 if isLetter('\16#00440;') <> TRUE then writeln("isLetter( # 440 ) incorrect"); success := FALSE; end if; # CYRILLIC SMALL LETTER ER 77 if isLetter('\16#00480;') <> TRUE then writeln("isLetter( # 480 ) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER KOPPA 78 if isLetter('\16#004c0;') <> TRUE then writeln("isLetter( # 4c0 ) incorrect"); success := FALSE; end if; # CYRILLIC LETTER PALOCHKA 79 if isLetter('\16#00500;') <> TRUE then writeln("isLetter( # 500 ) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER KOMI DE 80 if isLetter('\16#0050c;') <> TRUE then writeln("isLetter( # 50c ) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER KOMI SJE 81 if isLetter('\16#00548;') <> TRUE then writeln("isLetter( # 548 ) incorrect"); success := FALSE; end if; # ARMENIAN CAPITAL LETTER VO 82 if isLetter('\16#00578;') <> TRUE then writeln("isLetter( # 578 ) incorrect"); success := FALSE; end if; # ARMENIAN SMALL LETTER VO 83 if isLetter('\16#005ac;') <> FALSE then writeln("isLetter( # 5ac ) incorrect"); success := FALSE; end if; # HEBREW ACCENT ILUY 84 if isLetter('\16#005e4;') <> TRUE then writeln("isLetter( # 5e4 ) incorrect"); success := FALSE; end if; # HEBREW LETTER PE 85 if isLetter('\16#00600;') <> FALSE then writeln("isLetter( # 600 ) incorrect"); success := FALSE; end if; # ARABIC NUMBER SIGN 86 if isLetter('\16#00640;') <> TRUE then writeln("isLetter( # 640 ) incorrect"); success := FALSE; end if; # ARABIC TATWEEL 87 if isLetter('\16#00680;') <> TRUE then writeln("isLetter( # 680 ) incorrect"); success := FALSE; end if; # ARABIC LETTER BEHEH 88 if isLetter('\16#006c0;') <> TRUE then writeln("isLetter( # 6c0 ) incorrect"); success := FALSE; end if; # ARABIC LETTER HEH WITH YEH ABOVE 89 if isLetter('\16#00700;') <> FALSE then writeln("isLetter( # 700 ) incorrect"); success := FALSE; end if; # SYRIAC END OF PARAGRAPH 90 if isLetter('\16#00714;') <> TRUE then writeln("isLetter( # 714 ) incorrect"); success := FALSE; end if; # SYRIAC LETTER GAMAL GARSHUNI 91 if isLetter('\16#00728;') <> TRUE then writeln("isLetter( # 728 ) incorrect"); success := FALSE; end if; # SYRIAC LETTER SADHE 92 if isLetter('\16#0073c;') <> TRUE then writeln("isLetter( # 73c ) incorrect"); success := FALSE; end if; # SYRIAC HBASA-ESASA DOTTED 93 if isLetter('\16#00780;') <> TRUE then writeln("isLetter( # 780 ) incorrect"); success := FALSE; end if; # THAANA LETTER HAA 94 if isLetter('\16#00790;') <> TRUE then writeln("isLetter( # 790 ) incorrect"); success := FALSE; end if; # THAANA LETTER SEENU 95 if isLetter('\16#007a0;') <> TRUE then writeln("isLetter( # 7a0 ) incorrect"); success := FALSE; end if; # THAANA LETTER TO 96 if isLetter('\16#007b0;') <> TRUE then writeln("isLetter( # 7b0 ) incorrect"); success := FALSE; end if; # THAANA SUKUN 97 if isLetter('\16#007c0;') <> FALSE then writeln("isLetter( # 7c0 ) incorrect"); success := FALSE; end if; # NKO DIGIT ZERO 98 if isLetter('\16#007f0;') <> FALSE then writeln("isLetter( # 7f0 ) incorrect"); success := FALSE; end if; # NKO COMBINING LONG LOW TONE 99 if isLetter('\16#00920;') <> TRUE then writeln("isLetter( # 920 ) incorrect"); success := FALSE; end if; # DEVANAGARI LETTER TTHA 100 if isLetter('\16#00940;') <> TRUE then writeln("isLetter( # 940 ) incorrect"); success := FALSE; end if; # DEVANAGARI VOWEL SIGN II 101 if isLetter('\16#00960;') <> TRUE then writeln("isLetter( # 960 ) incorrect"); success := FALSE; end if; # DEVANAGARI LETTER VOCALIC RR 102 if isLetter('\16#009a0;') <> TRUE then writeln("isLetter( # 9a0 ) incorrect"); success := FALSE; end if; # BENGALI LETTER TTHA 103 if isLetter('\16#009c0;') <> TRUE then writeln("isLetter( # 9c0 ) incorrect"); success := FALSE; end if; # BENGALI VOWEL SIGN II 104 if isLetter('\16#009e0;') <> TRUE then writeln("isLetter( # 9e0 ) incorrect"); success := FALSE; end if; # BENGALI LETTER VOCALIC RR 105 if isLetter('\16#00a20;') <> TRUE then writeln("isLetter( # a20 ) incorrect"); success := FALSE; end if; # GURMUKHI LETTER TTHA 106 if isLetter('\16#00a40;') <> TRUE then writeln("isLetter( # a40 ) incorrect"); success := FALSE; end if; # GURMUKHI VOWEL SIGN II 107 if isLetter('\16#00aa0;') <> TRUE then writeln("isLetter( # aa0 ) incorrect"); success := FALSE; end if; # GUJARATI LETTER TTHA 108 if isLetter('\16#00ac0;') <> TRUE then writeln("isLetter( # ac0 ) incorrect"); success := FALSE; end if; # GUJARATI VOWEL SIGN II 109 if isLetter('\16#00ae0;') <> TRUE then writeln("isLetter( # ae0 ) incorrect"); success := FALSE; end if; # GUJARATI LETTER VOCALIC RR 110 if isLetter('\16#00b20;') <> TRUE then writeln("isLetter( # b20 ) incorrect"); success := FALSE; end if; # ORIYA LETTER TTHA 111 if isLetter('\16#00b40;') <> TRUE then writeln("isLetter( # b40 ) incorrect"); success := FALSE; end if; # ORIYA VOWEL SIGN II 112 if isLetter('\16#00b60;') <> TRUE then writeln("isLetter( # b60 ) incorrect"); success := FALSE; end if; # ORIYA LETTER VOCALIC RR 113 if isLetter('\16#00bc0;') <> TRUE then writeln("isLetter( # bc0 ) incorrect"); success := FALSE; end if; # TAMIL VOWEL SIGN II 114 if isLetter('\16#00c20;') <> TRUE then writeln("isLetter( # c20 ) incorrect"); success := FALSE; end if; # TELUGU LETTER TTHA 115 if isLetter('\16#00c40;') <> TRUE then writeln("isLetter( # c40 ) incorrect"); success := FALSE; end if; # TELUGU VOWEL SIGN II 116 if isLetter('\16#00c60;') <> TRUE then writeln("isLetter( # c60 ) incorrect"); success := FALSE; end if; # TELUGU LETTER VOCALIC RR 117 if isLetter('\16#00ca0;') <> TRUE then writeln("isLetter( # ca0 ) incorrect"); success := FALSE; end if; # KANNADA LETTER TTHA 118 if isLetter('\16#00cc0;') <> TRUE then writeln("isLetter( # cc0 ) incorrect"); success := FALSE; end if; # KANNADA VOWEL SIGN II 119 if isLetter('\16#00ce0;') <> TRUE then writeln("isLetter( # ce0 ) incorrect"); success := FALSE; end if; # KANNADA LETTER VOCALIC RR 120 if isLetter('\16#00d20;') <> TRUE then writeln("isLetter( # d20 ) incorrect"); success := FALSE; end if; # MALAYALAM LETTER TTHA 121 if isLetter('\16#00d40;') <> TRUE then writeln("isLetter( # d40 ) incorrect"); success := FALSE; end if; # MALAYALAM VOWEL SIGN II 122 if isLetter('\16#00d60;') <> TRUE then writeln("isLetter( # d60 ) incorrect"); success := FALSE; end if; # MALAYALAM LETTER VOCALIC RR 123 if isLetter('\16#00da0;') <> TRUE then writeln("isLetter( # da0 ) incorrect"); success := FALSE; end if; # SINHALA LETTER ALPAPRAANA CAYANNA 124 if isLetter('\16#00dc0;') <> TRUE then writeln("isLetter( # dc0 ) incorrect"); success := FALSE; end if; # SINHALA LETTER VAYANNA 125 if isLetter('\16#00e20;') <> TRUE then writeln("isLetter( # e20 ) incorrect"); success := FALSE; end if; # THAI CHARACTER PHO SAMPHAO 126 if isLetter('\16#00e40;') <> TRUE then writeln("isLetter( # e40 ) incorrect"); success := FALSE; end if; # THAI CHARACTER SARA E 127 if isLetter('\16#00ec0;') <> TRUE then writeln("isLetter( # ec0 ) incorrect"); success := FALSE; end if; # LAO VOWEL SIGN E 128 if isLetter('\16#00f00;') <> TRUE then writeln("isLetter( # f00 ) incorrect"); success := FALSE; end if; # TIBETAN SYLLABLE OM 129 if isLetter('\16#00f40;') <> TRUE then writeln("isLetter( # f40 ) incorrect"); success := FALSE; end if; # TIBETAN LETTER KA 130 if isLetter('\16#00f80;') <> TRUE then writeln("isLetter( # f80 ) incorrect"); success := FALSE; end if; # TIBETAN VOWEL SIGN REVERSED I 131 if isLetter('\16#00fc0;') <> FALSE then writeln("isLetter( # fc0 ) incorrect"); success := FALSE; end if; # TIBETAN CANTILLATION SIGN HEAVY BEAT 132 if isLetter('\16#01000;') <> TRUE then writeln("isLetter( # 1000 ) incorrect"); success := FALSE; end if; # MYANMAR LETTER KA 133 if isLetter('\16#01050;') <> TRUE then writeln("isLetter( # 1050 ) incorrect"); success := FALSE; end if; # MYANMAR LETTER SHA 134 if isLetter('\16#010a0;') <> TRUE then writeln("isLetter( # 10a0 ) incorrect"); success := FALSE; end if; # GEORGIAN CAPITAL LETTER AN 135 if isLetter('\16#010b8;') <> TRUE then writeln("isLetter( # 10b8 ) incorrect"); success := FALSE; end if; # GEORGIAN CAPITAL LETTER SHIN 136 if isLetter('\16#010d0;') <> TRUE then writeln("isLetter( # 10d0 ) incorrect"); success := FALSE; end if; # GEORGIAN LETTER AN 137 if isLetter('\16#010e8;') <> TRUE then writeln("isLetter( # 10e8 ) incorrect"); success := FALSE; end if; # GEORGIAN LETTER SHIN 138 if isLetter('\16#01100;') <> TRUE then writeln("isLetter( # 1100 ) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG KIYEOK 139 if isLetter('\16#01140;') <> TRUE then writeln("isLetter( # 1140 ) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG PANSIOS 140 if isLetter('\16#01180;') <> TRUE then writeln("isLetter( # 1180 ) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG O-E 141 if isLetter('\16#011c0;') <> TRUE then writeln("isLetter( # 11c0 ) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG THIEUTH 142 if isLetter('\16#01200;') <> TRUE then writeln("isLetter( # 1200 ) incorrect"); success := FALSE; end if; # ETHIOPIC SYLLABLE HA 143 if isLetter('\16#01260;') <> TRUE then writeln("isLetter( # 1260 ) incorrect"); success := FALSE; end if; # ETHIOPIC SYLLABLE BA 144 if isLetter('\16#012c0;') <> TRUE then writeln("isLetter( # 12c0 ) incorrect"); success := FALSE; end if; # ETHIOPIC SYLLABLE KXWA 145 if isLetter('\16#01320;') <> TRUE then writeln("isLetter( # 1320 ) incorrect"); success := FALSE; end if; # ETHIOPIC SYLLABLE THA 146 if isLetter('\16#01390;') <> FALSE then writeln("isLetter( # 1390 ) incorrect"); success := FALSE; end if; # ETHIOPIC TONAL MARK YIZET 147 if isLetter('\16#01398;') <> FALSE then writeln("isLetter( # 1398 ) incorrect"); success := FALSE; end if; # ETHIOPIC TONAL MARK DERET-HIDET 148 if isLetter('\16#013a0;') <> TRUE then writeln("isLetter( # 13a0 ) incorrect"); success := FALSE; end if; # CHEROKEE LETTER A 149 if isLetter('\16#013b8;') <> TRUE then writeln("isLetter( # 13b8 ) incorrect"); success := FALSE; end if; # CHEROKEE LETTER LV 150 if isLetter('\16#013d0;') <> TRUE then writeln("isLetter( # 13d0 ) incorrect"); success := FALSE; end if; # CHEROKEE LETTER SO 151 if isLetter('\16#013e8;') <> TRUE then writeln("isLetter( # 13e8 ) incorrect"); success := FALSE; end if; # CHEROKEE LETTER TSV 152 if isLetter('\16#01400;') <> FALSE then writeln("isLetter( # 1400 ) incorrect"); success := FALSE; end if; # CANADIAN SYLLABICS HYPHEN 153 if isLetter('\16#014a0;') <> TRUE then writeln("isLetter( # 14a0 ) incorrect"); success := FALSE; end if; # CANADIAN SYLLABICS NASKAPI CWAA 154 if isLetter('\16#01540;') <> TRUE then writeln("isLetter( # 1540 ) incorrect"); success := FALSE; end if; # CANADIAN SYLLABICS WEST-CREE Y 155 if isLetter('\16#015e0;') <> TRUE then writeln("isLetter( # 15e0 ) incorrect"); success := FALSE; end if; # CANADIAN SYLLABICS CARRIER THI 156 if isLetter('\16#01680;') <> FALSE then writeln("isLetter( # 1680 ) incorrect"); success := FALSE; end if; # OGHAM SPACE MARK 157 if isLetter('\16#01688;') <> TRUE then writeln("isLetter( # 1688 ) incorrect"); success := FALSE; end if; # OGHAM LETTER TINNE 158 if isLetter('\16#01690;') <> TRUE then writeln("isLetter( # 1690 ) incorrect"); success := FALSE; end if; # OGHAM LETTER AILM 159 if isLetter('\16#01698;') <> TRUE then writeln("isLetter( # 1698 ) incorrect"); success := FALSE; end if; # OGHAM LETTER IFIN 160 if isLetter('\16#016a0;') <> TRUE then writeln("isLetter( # 16a0 ) incorrect"); success := FALSE; end if; # RUNIC LETTER FEHU FEOH FE F 161 if isLetter('\16#016b8;') <> TRUE then writeln("isLetter( # 16b8 ) incorrect"); success := FALSE; end if; # RUNIC LETTER GAR 162 if isLetter('\16#016d0;') <> TRUE then writeln("isLetter( # 16d0 ) incorrect"); success := FALSE; end if; # RUNIC LETTER SHORT-TWIG-TYR T 163 if isLetter('\16#016e8;') <> TRUE then writeln("isLetter( # 16e8 ) incorrect"); success := FALSE; end if; # RUNIC LETTER ICELANDIC-YR 164 if isLetter('\16#01700;') <> TRUE then writeln("isLetter( # 1700 ) incorrect"); success := FALSE; end if; # TAGALOG LETTER A 165 if isLetter('\16#01708;') <> TRUE then writeln("isLetter( # 1708 ) incorrect"); success := FALSE; end if; # TAGALOG LETTER NA 166 if isLetter('\16#01710;') <> TRUE then writeln("isLetter( # 1710 ) incorrect"); success := FALSE; end if; # TAGALOG LETTER SA 167 if isLetter('\16#01720;') <> TRUE then writeln("isLetter( # 1720 ) incorrect"); success := FALSE; end if; # HANUNOO LETTER A 168 if isLetter('\16#01728;') <> TRUE then writeln("isLetter( # 1728 ) incorrect"); success := FALSE; end if; # HANUNOO LETTER NA 169 if isLetter('\16#01730;') <> TRUE then writeln("isLetter( # 1730 ) incorrect"); success := FALSE; end if; # HANUNOO LETTER SA 170 if isLetter('\16#01740;') <> TRUE then writeln("isLetter( # 1740 ) incorrect"); success := FALSE; end if; # BUHID LETTER A 171 if isLetter('\16#01748;') <> TRUE then writeln("isLetter( # 1748 ) incorrect"); success := FALSE; end if; # BUHID LETTER NA 172 if isLetter('\16#01750;') <> TRUE then writeln("isLetter( # 1750 ) incorrect"); success := FALSE; end if; # BUHID LETTER SA 173 if isLetter('\16#01760;') <> TRUE then writeln("isLetter( # 1760 ) incorrect"); success := FALSE; end if; # TAGBANWA LETTER A 174 if isLetter('\16#01768;') <> TRUE then writeln("isLetter( # 1768 ) incorrect"); success := FALSE; end if; # TAGBANWA LETTER NA 175 if isLetter('\16#01770;') <> TRUE then writeln("isLetter( # 1770 ) incorrect"); success := FALSE; end if; # TAGBANWA LETTER SA 176 if isLetter('\16#01780;') <> TRUE then writeln("isLetter( # 1780 ) incorrect"); success := FALSE; end if; # KHMER LETTER KA 177 if isLetter('\16#017a0;') <> TRUE then writeln("isLetter( # 17a0 ) incorrect"); success := FALSE; end if; # KHMER LETTER HA 178 if isLetter('\16#017c0;') <> TRUE then writeln("isLetter( # 17c0 ) incorrect"); success := FALSE; end if; # KHMER VOWEL SIGN IE 179 if isLetter('\16#017e0;') <> FALSE then writeln("isLetter( # 17e0 ) incorrect"); success := FALSE; end if; # KHMER DIGIT ZERO 180 if isLetter('\16#01800;') <> FALSE then writeln("isLetter( # 1800 ) incorrect"); success := FALSE; end if; # MONGOLIAN BIRGA 181 if isLetter('\16#0182c;') <> TRUE then writeln("isLetter( # 182c ) incorrect"); success := FALSE; end if; # MONGOLIAN LETTER QA 182 if isLetter('\16#01858;') <> TRUE then writeln("isLetter( # 1858 ) incorrect"); success := FALSE; end if; # MONGOLIAN LETTER TODO GAA 183 if isLetter('\16#01884;') <> TRUE then writeln("isLetter( # 1884 ) incorrect"); success := FALSE; end if; # MONGOLIAN LETTER ALI GALI INVERTED UBADAMA 184 if isLetter('\16#01900;') <> TRUE then writeln("isLetter( # 1900 ) incorrect"); success := FALSE; end if; # LIMBU VOWEL-CARRIER LETTER 185 if isLetter('\16#01914;') <> TRUE then writeln("isLetter( # 1914 ) incorrect"); success := FALSE; end if; # LIMBU LETTER MA 186 if isLetter('\16#01928;') <> TRUE then writeln("isLetter( # 1928 ) incorrect"); success := FALSE; end if; # LIMBU VOWEL SIGN O 187 if isLetter('\16#01950;') <> TRUE then writeln("isLetter( # 1950 ) incorrect"); success := FALSE; end if; # TAI LE LETTER KA 188 if isLetter('\16#0195c;') <> TRUE then writeln("isLetter( # 195c ) incorrect"); success := FALSE; end if; # TAI LE LETTER FA 189 if isLetter('\16#01968;') <> TRUE then writeln("isLetter( # 1968 ) incorrect"); success := FALSE; end if; # TAI LE LETTER OO 190 if isLetter('\16#01974;') <> TRUE then writeln("isLetter( # 1974 ) incorrect"); success := FALSE; end if; # TAI LE LETTER TONE-6 191 if isLetter('\16#019e0;') <> FALSE then writeln("isLetter( # 19e0 ) incorrect"); success := FALSE; end if; # KHMER SYMBOL PATHAMASAT 192 if isLetter('\16#019e8;') <> FALSE then writeln("isLetter( # 19e8 ) incorrect"); success := FALSE; end if; # KHMER SYMBOL PRAM-BEI KOET 193 if isLetter('\16#019f0;') <> FALSE then writeln("isLetter( # 19f0 ) incorrect"); success := FALSE; end if; # KHMER SYMBOL TUTEYASAT 194 if isLetter('\16#019f8;') <> FALSE then writeln("isLetter( # 19f8 ) incorrect"); success := FALSE; end if; # KHMER SYMBOL PRAM-BEI ROC 195 if isLetter('\16#01c3c;') <> FALSE then writeln("isLetter( # 1c3c ) incorrect"); success := FALSE; end if; # LEPCHA PUNCTUATION NYET THYOOM TA-ROL 196 if isLetter('\16#01c50;') <> FALSE then writeln("isLetter( # 1c50 ) incorrect"); success := FALSE; end if; # OL CHIKI DIGIT ZERO 197 if isLetter('\16#01cd0;') <> FALSE then writeln("isLetter( # 1cd0 ) incorrect"); success := FALSE; end if; # VEDIC TONE KARSHANA 198 if isLetter('\16#01cdc;') <> FALSE then writeln("isLetter( # 1cdc ) incorrect"); success := FALSE; end if; # VEDIC TONE KATHAKA ANUDATTA 199 if isLetter('\16#01ce8;') <> FALSE then writeln("isLetter( # 1ce8 ) incorrect"); success := FALSE; end if; # VEDIC SIGN VISARGA ANUDATTA WITH TAIL 200 if isLetter('\16#01d00;') <> TRUE then writeln("isLetter( # 1d00 ) incorrect"); success := FALSE; end if; # LATIN LETTER SMALL CAPITAL A 201 if isLetter('\16#01d20;') <> TRUE then writeln("isLetter( # 1d20 ) incorrect"); success := FALSE; end if; # LATIN LETTER SMALL CAPITAL V 202 if isLetter('\16#01d40;') <> TRUE then writeln("isLetter( # 1d40 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER CAPITAL T 203 if isLetter('\16#01d60;') <> TRUE then writeln("isLetter( # 1d60 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER SMALL GREEK PHI 204 if isLetter('\16#01dc0;') <> FALSE then writeln("isLetter( # 1dc0 ) incorrect"); success := FALSE; end if; # COMBINING DOTTED GRAVE ACCENT 205 if isLetter('\16#01dd0;') <> FALSE then writeln("isLetter( # 1dd0 ) incorrect"); success := FALSE; end if; # COMBINING IS BELOW 206 if isLetter('\16#01de0;') <> FALSE then writeln("isLetter( # 1de0 ) incorrect"); success := FALSE; end if; # COMBINING LATIN SMALL LETTER N 207 if isLetter('\16#01e00;') <> TRUE then writeln("isLetter( # 1e00 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH RING BELOW 208 if isLetter('\16#01e40;') <> TRUE then writeln("isLetter( # 1e40 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER M WITH DOT ABOVE 209 if isLetter('\16#01e80;') <> TRUE then writeln("isLetter( # 1e80 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER W WITH GRAVE 210 if isLetter('\16#01ec0;') <> TRUE then writeln("isLetter( # 1ec0 ) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER E WITH CIRCUMFLEX AND GRAVE 211 if isLetter('\16#01f00;') <> TRUE then writeln("isLetter( # 1f00 ) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER ALPHA WITH PSILI 212 if isLetter('\16#01f40;') <> TRUE then writeln("isLetter( # 1f40 ) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER OMICRON WITH PSILI 213 if isLetter('\16#01f80;') <> TRUE then writeln("isLetter( # 1f80 ) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER ALPHA WITH PSILI AND YPOGEGRAMMENI 214 if isLetter('\16#01fc0;') <> FALSE then writeln("isLetter( # 1fc0 ) incorrect"); success := FALSE; end if; # GREEK PERISPOMENI 215 if isLetter('\16#02000;') <> FALSE then writeln("isLetter( # 2000 ) incorrect"); success := FALSE; end if; # EN QUAD 216 if isLetter('\16#0201c;') <> FALSE then writeln("isLetter( # 201c ) incorrect"); success := FALSE; end if; # LEFT DOUBLE QUOTATION MARK 217 if isLetter('\16#02038;') <> FALSE then writeln("isLetter( # 2038 ) incorrect"); success := FALSE; end if; # CARET 218 if isLetter('\16#02054;') <> FALSE then writeln("isLetter( # 2054 ) incorrect"); success := FALSE; end if; # INVERTED UNDERTIE 219 if isLetter('\16#02070;') <> FALSE then writeln("isLetter( # 2070 ) incorrect"); success := FALSE; end if; # SUPERSCRIPT ZERO 220 if isLetter('\16#0207c;') <> FALSE then writeln("isLetter( # 207c ) incorrect"); success := FALSE; end if; # SUPERSCRIPT EQUALS SIGN 221 if isLetter('\16#02088;') <> FALSE then writeln("isLetter( # 2088 ) incorrect"); success := FALSE; end if; # SUBSCRIPT EIGHT 222 if isLetter('\16#020a0;') <> FALSE then writeln("isLetter( # 20a0 ) incorrect"); success := FALSE; end if; # EURO-CURRENCY SIGN 223 if isLetter('\16#020ac;') <> FALSE then writeln("isLetter( # 20ac ) incorrect"); success := FALSE; end if; # EURO SIGN 224 if isLetter('\16#020b8;') <> FALSE then writeln("isLetter( # 20b8 ) incorrect"); success := FALSE; end if; # TENGE SIGN 225 if isLetter('\16#020d0;') <> FALSE then writeln("isLetter( # 20d0 ) incorrect"); success := FALSE; end if; # COMBINING LEFT HARPOON ABOVE 226 if isLetter('\16#020dc;') <> FALSE then writeln("isLetter( # 20dc ) incorrect"); success := FALSE; end if; # COMBINING FOUR DOTS ABOVE 227 if isLetter('\16#020e8;') <> FALSE then writeln("isLetter( # 20e8 ) incorrect"); success := FALSE; end if; # COMBINING TRIPLE UNDERDOT 228 if isLetter('\16#02100;') <> FALSE then writeln("isLetter( # 2100 ) incorrect"); success := FALSE; end if; # ACCOUNT OF 229 if isLetter('\16#02114;') <> FALSE then writeln("isLetter( # 2114 ) incorrect"); success := FALSE; end if; # L B BAR SYMBOL 230 if isLetter('\16#02128;') <> TRUE then writeln("isLetter( # 2128 ) incorrect"); success := FALSE; end if; # BLACK-LETTER CAPITAL Z 231 if isLetter('\16#02150;') <> FALSE then writeln("isLetter( # 2150 ) incorrect"); success := FALSE; end if; # VULGAR FRACTION ONE SEVENTH 232 if isLetter('\16#02160;') <> TRUE then writeln("isLetter( # 2160 ) incorrect"); success := FALSE; end if; # ROMAN NUMERAL ONE 233 if isLetter('\16#02170;') <> TRUE then writeln("isLetter( # 2170 ) incorrect"); success := FALSE; end if; # SMALL ROMAN NUMERAL ONE 234 if isLetter('\16#02180;') <> TRUE then writeln("isLetter( # 2180 ) incorrect"); success := FALSE; end if; # ROMAN NUMERAL ONE THOUSAND C D 235 if isLetter('\16#02190;') <> FALSE then writeln("isLetter( # 2190 ) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW 236 if isLetter('\16#021ac;') <> FALSE then writeln("isLetter( # 21ac ) incorrect"); success := FALSE; end if; # RIGHTWARDS ARROW WITH LOOP 237 if isLetter('\16#021c8;') <> FALSE then writeln("isLetter( # 21c8 ) incorrect"); success := FALSE; end if; # UPWARDS PAIRED ARROWS 238 if isLetter('\16#021e4;') <> FALSE then writeln("isLetter( # 21e4 ) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW TO BAR 239 if isLetter('\16#02200;') <> FALSE then writeln("isLetter( # 2200 ) incorrect"); success := FALSE; end if; # FOR ALL 240 if isLetter('\16#02240;') <> FALSE then writeln("isLetter( # 2240 ) incorrect"); success := FALSE; end if; # WREATH PRODUCT 241 if isLetter('\16#02280;') <> FALSE then writeln("isLetter( # 2280 ) incorrect"); success := FALSE; end if; # DOES NOT PRECEDE 242 if isLetter('\16#022c0;') <> FALSE then writeln("isLetter( # 22c0 ) incorrect"); success := FALSE; end if; # N-ARY LOGICAL AND 243 if isLetter('\16#02300;') <> FALSE then writeln("isLetter( # 2300 ) incorrect"); success := FALSE; end if; # DIAMETER SIGN 244 if isLetter('\16#02340;') <> FALSE then writeln("isLetter( # 2340 ) incorrect"); success := FALSE; end if; # APL FUNCTIONAL SYMBOL BACKSLASH BAR 245 if isLetter('\16#02380;') <> FALSE then writeln("isLetter( # 2380 ) incorrect"); success := FALSE; end if; # INSERTION SYMBOL 246 if isLetter('\16#023c0;') <> FALSE then writeln("isLetter( # 23c0 ) incorrect"); success := FALSE; end if; # DENTISTRY SYMBOL LIGHT VERTICAL WITH CIRCLE 247 if isLetter('\16#02400;') <> FALSE then writeln("isLetter( # 2400 ) incorrect"); success := FALSE; end if; # SYMBOL FOR NULL 248 if isLetter('\16#02410;') <> FALSE then writeln("isLetter( # 2410 ) incorrect"); success := FALSE; end if; # SYMBOL FOR DATA LINK ESCAPE 249 if isLetter('\16#02420;') <> FALSE then writeln("isLetter( # 2420 ) incorrect"); success := FALSE; end if; # SYMBOL FOR SPACE 250 if isLetter('\16#02440;') <> FALSE then writeln("isLetter( # 2440 ) incorrect"); success := FALSE; end if; # OCR HOOK 251 if isLetter('\16#02448;') <> FALSE then writeln("isLetter( # 2448 ) incorrect"); success := FALSE; end if; # OCR DASH 252 if isLetter('\16#02460;') <> FALSE then writeln("isLetter( # 2460 ) incorrect"); success := FALSE; end if; # CIRCLED DIGIT ONE 253 if isLetter('\16#02488;') <> FALSE then writeln("isLetter( # 2488 ) incorrect"); success := FALSE; end if; # DIGIT ONE FULL STOP 254 if isLetter('\16#024b0;') <> FALSE then writeln("isLetter( # 24b0 ) incorrect"); success := FALSE; end if; # PARENTHESIZED LATIN SMALL LETTER U 255 if isLetter('\16#02500;') <> FALSE then writeln("isLetter( # 2500 ) incorrect"); success := FALSE; end if; # BOX DRAWINGS LIGHT HORIZONTAL 256 if isLetter('\16#02520;') <> FALSE then writeln("isLetter( # 2520 ) incorrect"); success := FALSE; end if; # BOX DRAWINGS VERTICAL HEAVY AND RIGHT LIGHT 257 if isLetter('\16#02540;') <> FALSE then writeln("isLetter( # 2540 ) incorrect"); success := FALSE; end if; # BOX DRAWINGS UP HEAVY AND DOWN HORIZONTAL LIGHT 258 if isLetter('\16#02560;') <> FALSE then writeln("isLetter( # 2560 ) incorrect"); success := FALSE; end if; # BOX DRAWINGS DOUBLE VERTICAL AND RIGHT 259 if isLetter('\16#02580;') <> FALSE then writeln("isLetter( # 2580 ) incorrect"); success := FALSE; end if; # UPPER HALF BLOCK 260 if isLetter('\16#02588;') <> FALSE then writeln("isLetter( # 2588 ) incorrect"); success := FALSE; end if; # FULL BLOCK 261 if isLetter('\16#02590;') <> FALSE then writeln("isLetter( # 2590 ) incorrect"); success := FALSE; end if; # RIGHT HALF BLOCK 262 if isLetter('\16#02598;') <> FALSE then writeln("isLetter( # 2598 ) incorrect"); success := FALSE; end if; # QUADRANT UPPER LEFT 263 if isLetter('\16#025a0;') <> FALSE then writeln("isLetter( # 25a0 ) incorrect"); success := FALSE; end if; # BLACK SQUARE 264 if isLetter('\16#025b8;') <> FALSE then writeln("isLetter( # 25b8 ) incorrect"); success := FALSE; end if; # BLACK RIGHT-POINTING SMALL TRIANGLE 265 if isLetter('\16#025d0;') <> FALSE then writeln("isLetter( # 25d0 ) incorrect"); success := FALSE; end if; # CIRCLE WITH LEFT HALF BLACK 266 if isLetter('\16#025e8;') <> FALSE then writeln("isLetter( # 25e8 ) incorrect"); success := FALSE; end if; # SQUARE WITH RIGHT HALF BLACK 267 if isLetter('\16#02600;') <> FALSE then writeln("isLetter( # 2600 ) incorrect"); success := FALSE; end if; # BLACK SUN WITH RAYS 268 if isLetter('\16#02640;') <> FALSE then writeln("isLetter( # 2640 ) incorrect"); success := FALSE; end if; # FEMALE SIGN 269 if isLetter('\16#02680;') <> FALSE then writeln("isLetter( # 2680 ) incorrect"); success := FALSE; end if; # DIE FACE-1 270 if isLetter('\16#026c0;') <> FALSE then writeln("isLetter( # 26c0 ) incorrect"); success := FALSE; end if; # WHITE DRAUGHTS MAN 271 if isLetter('\16#02730;') <> FALSE then writeln("isLetter( # 2730 ) incorrect"); success := FALSE; end if; # SHADOWED WHITE STAR 272 if isLetter('\16#02760;') <> FALSE then writeln("isLetter( # 2760 ) incorrect"); success := FALSE; end if; # HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT 273 if isLetter('\16#02790;') <> FALSE then writeln("isLetter( # 2790 ) incorrect"); success := FALSE; end if; # DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT SEVEN 274 if isLetter('\16#027c0;') <> FALSE then writeln("isLetter( # 27c0 ) incorrect"); success := FALSE; end if; # THREE DIMENSIONAL ANGLE 275 if isLetter('\16#027cc;') <> FALSE then writeln("isLetter( # 27cc ) incorrect"); success := FALSE; end if; # LONG DIVISION 276 if isLetter('\16#027d8;') <> FALSE then writeln("isLetter( # 27d8 ) incorrect"); success := FALSE; end if; # LARGE UP TACK 277 if isLetter('\16#027e4;') <> FALSE then writeln("isLetter( # 27e4 ) incorrect"); success := FALSE; end if; # WHITE SQUARE WITH LEFTWARDS TICK 278 if isLetter('\16#027f0;') <> FALSE then writeln("isLetter( # 27f0 ) incorrect"); success := FALSE; end if; # UPWARDS QUADRUPLE ARROW 279 if isLetter('\16#027f4;') <> FALSE then writeln("isLetter( # 27f4 ) incorrect"); success := FALSE; end if; # RIGHT ARROW WITH CIRCLED PLUS 280 if isLetter('\16#027f8;') <> FALSE then writeln("isLetter( # 27f8 ) incorrect"); success := FALSE; end if; # LONG LEFTWARDS DOUBLE ARROW 281 if isLetter('\16#027fc;') <> FALSE then writeln("isLetter( # 27fc ) incorrect"); success := FALSE; end if; # LONG RIGHTWARDS ARROW FROM BAR 282 if isLetter('\16#02800;') <> FALSE then writeln("isLetter( # 2800 ) incorrect"); success := FALSE; end if; # BRAILLE PATTERN BLANK 283 if isLetter('\16#02840;') <> FALSE then writeln("isLetter( # 2840 ) incorrect"); success := FALSE; end if; # BRAILLE PATTERN DOTS-7 284 if isLetter('\16#02880;') <> FALSE then writeln("isLetter( # 2880 ) incorrect"); success := FALSE; end if; # BRAILLE PATTERN DOTS-8 285 if isLetter('\16#028c0;') <> FALSE then writeln("isLetter( # 28c0 ) incorrect"); success := FALSE; end if; # BRAILLE PATTERN DOTS-78 286 if isLetter('\16#02900;') <> FALSE then writeln("isLetter( # 2900 ) incorrect"); success := FALSE; end if; # RIGHTWARDS TWO-HEADED ARROW WITH VERTICAL STROKE 287 if isLetter('\16#02920;') <> FALSE then writeln("isLetter( # 2920 ) incorrect"); success := FALSE; end if; # RIGHTWARDS ARROW FROM BAR TO BLACK DIAMOND 288 if isLetter('\16#02940;') <> FALSE then writeln("isLetter( # 2940 ) incorrect"); success := FALSE; end if; # ANTICLOCKWISE CLOSED CIRCLE ARROW 289 if isLetter('\16#02960;') <> FALSE then writeln("isLetter( # 2960 ) incorrect"); success := FALSE; end if; # UPWARDS HARPOON WITH BARB LEFT FROM BAR 290 if isLetter('\16#02980;') <> FALSE then writeln("isLetter( # 2980 ) incorrect"); success := FALSE; end if; # TRIPLE VERTICAL BAR DELIMITER 291 if isLetter('\16#029a0;') <> FALSE then writeln("isLetter( # 29a0 ) incorrect"); success := FALSE; end if; # SPHERICAL ANGLE OPENING LEFT 292 if isLetter('\16#029c0;') <> FALSE then writeln("isLetter( # 29c0 ) incorrect"); success := FALSE; end if; # CIRCLED LESS-THAN 293 if isLetter('\16#029e0;') <> FALSE then writeln("isLetter( # 29e0 ) incorrect"); success := FALSE; end if; # SQUARE WITH CONTOURED OUTLINE 294 if isLetter('\16#02a00;') <> FALSE then writeln("isLetter( # 2a00 ) incorrect"); success := FALSE; end if; # N-ARY CIRCLED DOT OPERATOR 295 if isLetter('\16#02a40;') <> FALSE then writeln("isLetter( # 2a40 ) incorrect"); success := FALSE; end if; # INTERSECTION WITH DOT 296 if isLetter('\16#02a80;') <> FALSE then writeln("isLetter( # 2a80 ) incorrect"); success := FALSE; end if; # GREATER-THAN OR SLANTED EQUAL TO WITH DOT INSIDE 297 if isLetter('\16#02ac0;') <> FALSE then writeln("isLetter( # 2ac0 ) incorrect"); success := FALSE; end if; # SUPERSET WITH PLUS SIGN BELOW 298 if isLetter('\16#02b00;') <> FALSE then writeln("isLetter( # 2b00 ) incorrect"); success := FALSE; end if; # NORTH EAST WHITE ARROW 299 if isLetter('\16#02b40;') <> FALSE then writeln("isLetter( # 2b40 ) incorrect"); success := FALSE; end if; # EQUALS SIGN ABOVE LEFTWARDS ARROW 300 if isLetter('\16#02e00;') <> FALSE then writeln("isLetter( # 2e00 ) incorrect"); success := FALSE; end if; # RIGHT ANGLE SUBSTITUTION MARKER 301 if isLetter('\16#02e20;') <> FALSE then writeln("isLetter( # 2e20 ) incorrect"); success := FALSE; end if; # LEFT VERTICAL BAR WITH QUILL 302 if isLetter('\16#02e80;') <> FALSE then writeln("isLetter( # 2e80 ) incorrect"); success := FALSE; end if; # CJK RADICAL REPEAT 303 if isLetter('\16#02ea0;') <> FALSE then writeln("isLetter( # 2ea0 ) incorrect"); success := FALSE; end if; # CJK RADICAL CIVILIAN 304 if isLetter('\16#02ec0;') <> FALSE then writeln("isLetter( # 2ec0 ) incorrect"); success := FALSE; end if; # CJK RADICAL GRASS THREE 305 if isLetter('\16#02ee0;') <> FALSE then writeln("isLetter( # 2ee0 ) incorrect"); success := FALSE; end if; # CJK RADICAL C-SIMPLIFIED EAT 306 if isLetter('\16#02f00;') <> FALSE then writeln("isLetter( # 2f00 ) incorrect"); success := FALSE; end if; # KANGXI RADICAL ONE 307 if isLetter('\16#02f38;') <> FALSE then writeln("isLetter( # 2f38 ) incorrect"); success := FALSE; end if; # KANGXI RADICAL BOW 308 if isLetter('\16#02f70;') <> FALSE then writeln("isLetter( # 2f70 ) incorrect"); success := FALSE; end if; # KANGXI RADICAL SPIRIT 309 if isLetter('\16#02fa8;') <> FALSE then writeln("isLetter( # 2fa8 ) incorrect"); success := FALSE; end if; # KANGXI RADICAL GATE 310 if isLetter('\16#02ff0;') <> FALSE then writeln("isLetter( # 2ff0 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT 311 if isLetter('\16#02ff4;') <> FALSE then writeln("isLetter( # 2ff4 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC DESCRIPTION CHARACTER FULL SURROUND 312 if isLetter('\16#02ff8;') <> FALSE then writeln("isLetter( # 2ff8 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM UPPER LEFT 313 if isLetter('\16#03000;') <> FALSE then writeln("isLetter( # 3000 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC SPACE 314 if isLetter('\16#03010;') <> FALSE then writeln("isLetter( # 3010 ) incorrect"); success := FALSE; end if; # LEFT BLACK LENTICULAR BRACKET 315 if isLetter('\16#03020;') <> FALSE then writeln("isLetter( # 3020 ) incorrect"); success := FALSE; end if; # POSTAL MARK FACE 316 if isLetter('\16#03030;') <> FALSE then writeln("isLetter( # 3030 ) incorrect"); success := FALSE; end if; # WAVY DASH 317 if isLetter('\16#03058;') <> TRUE then writeln("isLetter( # 3058 ) incorrect"); success := FALSE; end if; # HIRAGANA LETTER ZI 318 if isLetter('\16#03070;') <> TRUE then writeln("isLetter( # 3070 ) incorrect"); success := FALSE; end if; # HIRAGANA LETTER BA 319 if isLetter('\16#03088;') <> TRUE then writeln("isLetter( # 3088 ) incorrect"); success := FALSE; end if; # HIRAGANA LETTER YO 320 if isLetter('\16#030a0;') <> FALSE then writeln("isLetter( # 30a0 ) incorrect"); success := FALSE; end if; # KATAKANA-HIRAGANA DOUBLE HYPHEN 321 if isLetter('\16#030b8;') <> TRUE then writeln("isLetter( # 30b8 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER ZI 322 if isLetter('\16#030d0;') <> TRUE then writeln("isLetter( # 30d0 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER BA 323 if isLetter('\16#030e8;') <> TRUE then writeln("isLetter( # 30e8 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER YO 324 if isLetter('\16#0310c;') <> TRUE then writeln("isLetter( # 310c ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER L 325 if isLetter('\16#03118;') <> TRUE then writeln("isLetter( # 3118 ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER C 326 if isLetter('\16#03124;') <> TRUE then writeln("isLetter( # 3124 ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER ANG 327 if isLetter('\16#03148;') <> TRUE then writeln("isLetter( # 3148 ) incorrect"); success := FALSE; end if; # HANGUL LETTER CIEUC 328 if isLetter('\16#03160;') <> TRUE then writeln("isLetter( # 3160 ) incorrect"); success := FALSE; end if; # HANGUL LETTER YU 329 if isLetter('\16#03178;') <> TRUE then writeln("isLetter( # 3178 ) incorrect"); success := FALSE; end if; # HANGUL LETTER KAPYEOUNPIEUP 330 if isLetter('\16#03190;') <> FALSE then writeln("isLetter( # 3190 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC ANNOTATION LINKING MARK 331 if isLetter('\16#03194;') <> FALSE then writeln("isLetter( # 3194 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC ANNOTATION THREE MARK 332 if isLetter('\16#03198;') <> FALSE then writeln("isLetter( # 3198 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC ANNOTATION BOTTOM MARK 333 if isLetter('\16#0319c;') <> FALSE then writeln("isLetter( # 319c ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC ANNOTATION FOURTH MARK 334 if isLetter('\16#031a0;') <> TRUE then writeln("isLetter( # 31a0 ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER BU 335 if isLetter('\16#031a8;') <> TRUE then writeln("isLetter( # 31a8 ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER IR 336 if isLetter('\16#031b0;') <> TRUE then writeln("isLetter( # 31b0 ) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER AM 337 if isLetter('\16#031c0;') <> FALSE then writeln("isLetter( # 31c0 ) incorrect"); success := FALSE; end if; # CJK STROKE T 338 if isLetter('\16#031cc;') <> FALSE then writeln("isLetter( # 31cc ) incorrect"); success := FALSE; end if; # CJK STROKE HPWG 339 if isLetter('\16#031d8;') <> FALSE then writeln("isLetter( # 31d8 ) incorrect"); success := FALSE; end if; # CJK STROKE SWZ 340 if isLetter('\16#031f0;') <> TRUE then writeln("isLetter( # 31f0 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER SMALL KU 341 if isLetter('\16#031f4;') <> TRUE then writeln("isLetter( # 31f4 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER SMALL NU 342 if isLetter('\16#031f8;') <> TRUE then writeln("isLetter( # 31f8 ) incorrect"); success := FALSE; end if; # KATAKANA LETTER SMALL HE 343 if isLetter('\16#031fc;') <> TRUE then writeln("isLetter( # 31fc ) incorrect"); success := FALSE; end if; # KATAKANA LETTER SMALL RI 344 if isLetter('\16#03200;') <> FALSE then writeln("isLetter( # 3200 ) incorrect"); success := FALSE; end if; # PARENTHESIZED HANGUL KIYEOK 345 if isLetter('\16#03240;') <> FALSE then writeln("isLetter( # 3240 ) incorrect"); success := FALSE; end if; # PARENTHESIZED IDEOGRAPH FESTIVAL 346 if isLetter('\16#03280;') <> FALSE then writeln("isLetter( # 3280 ) incorrect"); success := FALSE; end if; # CIRCLED IDEOGRAPH ONE 347 if isLetter('\16#032c0;') <> FALSE then writeln("isLetter( # 32c0 ) incorrect"); success := FALSE; end if; # IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY 348 if isLetter('\16#03300;') <> FALSE then writeln("isLetter( # 3300 ) incorrect"); success := FALSE; end if; # SQUARE APAATO 349 if isLetter('\16#03340;') <> FALSE then writeln("isLetter( # 3340 ) incorrect"); success := FALSE; end if; # SQUARE PONDO 350 if isLetter('\16#03380;') <> FALSE then writeln("isLetter( # 3380 ) incorrect"); success := FALSE; end if; # SQUARE PA AMPS 351 if isLetter('\16#033c0;') <> FALSE then writeln("isLetter( # 33c0 ) incorrect"); success := FALSE; end if; # SQUARE K OHM 352 if isLetter('\16#03400;') <> TRUE then writeln("isLetter( # 3400 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-3400 353 if isLetter('\16#03a70;') <> TRUE then writeln("isLetter( # 3a70 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-3A70 354 if isLetter('\16#040e0;') <> TRUE then writeln("isLetter( # 40e0 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-40E0 355 if isLetter('\16#04750;') <> TRUE then writeln("isLetter( # 4750 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-4750 356 if isLetter('\16#04dc0;') <> FALSE then writeln("isLetter( # 4dc0 ) incorrect"); success := FALSE; end if; # HEXAGRAM FOR THE CREATIVE HEAVEN 357 if isLetter('\16#04dd0;') <> FALSE then writeln("isLetter( # 4dd0 ) incorrect"); success := FALSE; end if; # HEXAGRAM FOR FOLLOWING 358 if isLetter('\16#04de0;') <> FALSE then writeln("isLetter( # 4de0 ) incorrect"); success := FALSE; end if; # HEXAGRAM FOR RETREAT 359 if isLetter('\16#04df0;') <> FALSE then writeln("isLetter( # 4df0 ) incorrect"); success := FALSE; end if; # HEXAGRAM FOR REVOLUTION 360 if isLetter('\16#04e00;') <> TRUE then writeln("isLetter( # 4e00 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-4E00 361 if isLetter('\16#06280;') <> TRUE then writeln("isLetter( # 6280 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-6280 362 if isLetter('\16#07700;') <> TRUE then writeln("isLetter( # 7700 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-7700 363 if isLetter('\16#08b80;') <> TRUE then writeln("isLetter( # 8b80 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-8B80 364 if isLetter('\16#0a000;') <> TRUE then writeln("isLetter( # a000 ) incorrect"); success := FALSE; end if; # YI SYLLABLE IT 365 if isLetter('\16#0a124;') <> TRUE then writeln("isLetter( # a124 ) incorrect"); success := FALSE; end if; # YI SYLLABLE TAP 366 if isLetter('\16#0a248;') <> TRUE then writeln("isLetter( # a248 ) incorrect"); success := FALSE; end if; # YI SYLLABLE HXI 367 if isLetter('\16#0a36c;') <> TRUE then writeln("isLetter( # a36c ) incorrect"); success := FALSE; end if; # YI SYLLABLE CHOP 368 if isLetter('\16#0a490;') <> FALSE then writeln("isLetter( # a490 ) incorrect"); success := FALSE; end if; # YI RADICAL QOT 369 if isLetter('\16#0a4a0;') <> FALSE then writeln("isLetter( # a4a0 ) incorrect"); success := FALSE; end if; # YI RADICAL TAT 370 if isLetter('\16#0a4b0;') <> FALSE then writeln("isLetter( # a4b0 ) incorrect"); success := FALSE; end if; # YI RADICAL SHY 371 if isLetter('\16#0a4c0;') <> FALSE then writeln("isLetter( # a4c0 ) incorrect"); success := FALSE; end if; # YI RADICAL SHAT 372 if isLetter('\16#0a670;') <> FALSE then writeln("isLetter( # a670 ) incorrect"); success := FALSE; end if; # COMBINING CYRILLIC TEN MILLIONS SIGN 373 if isLetter('\16#0a700;') <> FALSE then writeln("isLetter( # a700 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER CHINESE TONE YIN PING 374 if isLetter('\16#0a708;') <> FALSE then writeln("isLetter( # a708 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER EXTRA-HIGH DOTTED TONE BAR 375 if isLetter('\16#0a710;') <> FALSE then writeln("isLetter( # a710 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER LOW DOTTED LEFT-STEM TONE BAR 376 if isLetter('\16#0a720;') <> FALSE then writeln("isLetter( # a720 ) incorrect"); success := FALSE; end if; # MODIFIER LETTER STRESS AND HIGH TONE 377 if isLetter('\16#0a830;') <> FALSE then writeln("isLetter( # a830 ) incorrect"); success := FALSE; end if; # NORTH INDIC FRACTION ONE QUARTER 378 if isLetter('\16#0a834;') <> FALSE then writeln("isLetter( # a834 ) incorrect"); success := FALSE; end if; # NORTH INDIC FRACTION ONE EIGHTH 379 if isLetter('\16#0a838;') <> FALSE then writeln("isLetter( # a838 ) incorrect"); success := FALSE; end if; # NORTH INDIC RUPEE MARK 380 if isLetter('\16#0a8e0;') <> FALSE then writeln("isLetter( # a8e0 ) incorrect"); success := FALSE; end if; # COMBINING DEVANAGARI DIGIT ZERO 381 if isLetter('\16#0a8e8;') <> FALSE then writeln("isLetter( # a8e8 ) incorrect"); success := FALSE; end if; # COMBINING DEVANAGARI DIGIT EIGHT 382 if isLetter('\16#0a8f0;') <> FALSE then writeln("isLetter( # a8f0 ) incorrect"); success := FALSE; end if; # COMBINING DEVANAGARI LETTER VI 383 if isLetter('\16#0a8f8;') <> FALSE then writeln("isLetter( # a8f8 ) incorrect"); success := FALSE; end if; # DEVANAGARI SIGN PUSHPIKA 384 if isLetter('\16#0a900;') <> FALSE then writeln("isLetter( # a900 ) incorrect"); success := FALSE; end if; # KAYAH LI DIGIT ZERO 385 if isLetter('\16#0abf0;') <> FALSE then writeln("isLetter( # abf0 ) incorrect"); success := FALSE; end if; # MEETEI MAYEK DIGIT ZERO 386 if isLetter('\16#0ac00;') <> TRUE then writeln("isLetter( # ac00 ) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE GA 387 if isLetter('\16#0b6ec;') <> TRUE then writeln("isLetter( # b6ec ) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE DDWEK 388 if isLetter('\16#0c1d8;') <> TRUE then writeln("isLetter( # c1d8 ) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE SWAESS 389 if isLetter('\16#0ccc4;') <> TRUE then writeln("isLetter( # ccc4 ) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE CEM 390 if isLetter('\16#0d800;') <> FALSE then writeln("isLetter( # d800 ) incorrect"); success := FALSE; end if; # <lead surrogate-D800> 391 if isLetter('\16#0d8e0;') <> FALSE then writeln("isLetter( # d8e0 ) incorrect"); success := FALSE; end if; # <lead surrogate-D8E0> 392 if isLetter('\16#0d9c0;') <> FALSE then writeln("isLetter( # d9c0 ) incorrect"); success := FALSE; end if; # <lead surrogate-D9C0> 393 if isLetter('\16#0daa0;') <> FALSE then writeln("isLetter( # daa0 ) incorrect"); success := FALSE; end if; # <lead surrogate-DAA0> 394 if isLetter('\16#0db80;') <> FALSE then writeln("isLetter( # db80 ) incorrect"); success := FALSE; end if; # <lead surrogate-DB80> 395 if isLetter('\16#0dba0;') <> FALSE then writeln("isLetter( # dba0 ) incorrect"); success := FALSE; end if; # <lead surrogate-DBA0> 396 if isLetter('\16#0dbc0;') <> FALSE then writeln("isLetter( # dbc0 ) incorrect"); success := FALSE; end if; # <lead surrogate-DBC0> 397 if isLetter('\16#0dbe0;') <> FALSE then writeln("isLetter( # dbe0 ) incorrect"); success := FALSE; end if; # <lead surrogate-DBE0> 398 if isLetter('\16#0dc00;') <> FALSE then writeln("isLetter( # dc00 ) incorrect"); success := FALSE; end if; # <trail surrogate-DC00> 399 if isLetter('\16#0dd00;') <> FALSE then writeln("isLetter( # dd00 ) incorrect"); success := FALSE; end if; # <trail surrogate-DD00> 400 if isLetter('\16#0de00;') <> FALSE then writeln("isLetter( # de00 ) incorrect"); success := FALSE; end if; # <trail surrogate-DE00> 401 if isLetter('\16#0df00;') <> FALSE then writeln("isLetter( # df00 ) incorrect"); success := FALSE; end if; # <trail surrogate-DF00> 402 if isLetter('\16#0e000;') <> FALSE then writeln("isLetter( # e000 ) incorrect"); success := FALSE; end if; # <private use area-E000> 403 if isLetter('\16#0e640;') <> FALSE then writeln("isLetter( # e640 ) incorrect"); success := FALSE; end if; # <private use area-E640> 404 if isLetter('\16#0ec80;') <> FALSE then writeln("isLetter( # ec80 ) incorrect"); success := FALSE; end if; # <private use area-EC80> 405 if isLetter('\16#0f2c0;') <> FALSE then writeln("isLetter( # f2c0 ) incorrect"); success := FALSE; end if; # <private use area-F2C0> 406 if isLetter('\16#0f900;') <> TRUE then writeln("isLetter( # f900 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-F900 407 if isLetter('\16#0f980;') <> TRUE then writeln("isLetter( # f980 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-F980 408 if isLetter('\16#0fa00;') <> TRUE then writeln("isLetter( # fa00 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-FA00 409 if isLetter('\16#0fb00;') <> TRUE then writeln("isLetter( # fb00 ) incorrect"); success := FALSE; end if; # LATIN SMALL LIGATURE FF 410 if isLetter('\16#0fb14;') <> TRUE then writeln("isLetter( # fb14 ) incorrect"); success := FALSE; end if; # ARMENIAN SMALL LIGATURE MEN ECH 411 if isLetter('\16#0fb28;') <> TRUE then writeln("isLetter( # fb28 ) incorrect"); success := FALSE; end if; # HEBREW LETTER WIDE TAV 412 if isLetter('\16#0fb3c;') <> TRUE then writeln("isLetter( # fb3c ) incorrect"); success := FALSE; end if; # HEBREW LETTER LAMED WITH DAGESH 413 if isLetter('\16#0fb50;') <> TRUE then writeln("isLetter( # fb50 ) incorrect"); success := FALSE; end if; # ARABIC LETTER ALEF WASLA ISOLATED FORM 414 if isLetter('\16#0fbfc;') <> TRUE then writeln("isLetter( # fbfc ) incorrect"); success := FALSE; end if; # ARABIC LETTER FARSI YEH ISOLATED FORM 415 if isLetter('\16#0fca8;') <> TRUE then writeln("isLetter( # fca8 ) incorrect"); success := FALSE; end if; # ARABIC LIGATURE JEEM WITH MEEM INITIAL FORM 416 if isLetter('\16#0fd54;') <> TRUE then writeln("isLetter( # fd54 ) incorrect"); success := FALSE; end if; # ARABIC LIGATURE TEH WITH KHAH WITH MEEM INITIAL FORM 417 if isLetter('\16#0fe00;') <> FALSE then writeln("isLetter( # fe00 ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-1 418 if isLetter('\16#0fe04;') <> FALSE then writeln("isLetter( # fe04 ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-5 419 if isLetter('\16#0fe08;') <> FALSE then writeln("isLetter( # fe08 ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-9 420 if isLetter('\16#0fe0c;') <> FALSE then writeln("isLetter( # fe0c ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-13 421 if isLetter('\16#0fe10;') <> FALSE then writeln("isLetter( # fe10 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL COMMA 422 if isLetter('\16#0fe14;') <> FALSE then writeln("isLetter( # fe14 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL SEMICOLON 423 if isLetter('\16#0fe18;') <> FALSE then writeln("isLetter( # fe18 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET 424 if isLetter('\16#0fe20;') <> FALSE then writeln("isLetter( # fe20 ) incorrect"); success := FALSE; end if; # COMBINING LIGATURE LEFT HALF 425 if isLetter('\16#0fe24;') <> FALSE then writeln("isLetter( # fe24 ) incorrect"); success := FALSE; end if; # COMBINING MACRON LEFT HALF 426 if isLetter('\16#0fe30;') <> FALSE then writeln("isLetter( # fe30 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL TWO DOT LEADER 427 if isLetter('\16#0fe38;') <> FALSE then writeln("isLetter( # fe38 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL RIGHT CURLY BRACKET 428 if isLetter('\16#0fe40;') <> FALSE then writeln("isLetter( # fe40 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL RIGHT ANGLE BRACKET 429 if isLetter('\16#0fe48;') <> FALSE then writeln("isLetter( # fe48 ) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL RIGHT SQUARE BRACKET 430 if isLetter('\16#0fe50;') <> FALSE then writeln("isLetter( # fe50 ) incorrect"); success := FALSE; end if; # SMALL COMMA 431 if isLetter('\16#0fe58;') <> FALSE then writeln("isLetter( # fe58 ) incorrect"); success := FALSE; end if; # SMALL EM DASH 432 if isLetter('\16#0fe60;') <> FALSE then writeln("isLetter( # fe60 ) incorrect"); success := FALSE; end if; # SMALL AMPERSAND 433 if isLetter('\16#0fe68;') <> FALSE then writeln("isLetter( # fe68 ) incorrect"); success := FALSE; end if; # SMALL REVERSE SOLIDUS 434 if isLetter('\16#0fe70;') <> TRUE then writeln("isLetter( # fe70 ) incorrect"); success := FALSE; end if; # ARABIC FATHATAN ISOLATED FORM 435 if isLetter('\16#0fe94;') <> TRUE then writeln("isLetter( # fe94 ) incorrect"); success := FALSE; end if; # ARABIC LETTER TEH MARBUTA FINAL FORM 436 if isLetter('\16#0feb8;') <> TRUE then writeln("isLetter( # feb8 ) incorrect"); success := FALSE; end if; # ARABIC LETTER SHEEN MEDIAL FORM 437 if isLetter('\16#0fedc;') <> TRUE then writeln("isLetter( # fedc ) incorrect"); success := FALSE; end if; # ARABIC LETTER KAF MEDIAL FORM 438 if isLetter('\16#0ff3c;') <> FALSE then writeln("isLetter( # ff3c ) incorrect"); success := FALSE; end if; # FULLWIDTH REVERSE SOLIDUS 439 if isLetter('\16#0ff78;') <> TRUE then writeln("isLetter( # ff78 ) incorrect"); success := FALSE; end if; # HALFWIDTH KATAKANA LETTER KU 440 if isLetter('\16#0ffb4;') <> TRUE then writeln("isLetter( # ffb4 ) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER PIEUP-SIOS 441 if isLetter('\16#0fffc;') <> FALSE then writeln("isLetter( # fffc ) incorrect"); success := FALSE; end if; # OBJECT REPLACEMENT CHARACTER 442 if isLetter('\16#10000;') <> TRUE then writeln("isLetter( #10000 ) incorrect"); success := FALSE; end if; # LINEAR B SYLLABLE B008 A 443 if isLetter('\16#10020;') <> TRUE then writeln("isLetter( #10020 ) incorrect"); success := FALSE; end if; # LINEAR B SYLLABLE B039 PI 444 if isLetter('\16#10040;') <> TRUE then writeln("isLetter( #10040 ) incorrect"); success := FALSE; end if; # LINEAR B SYLLABLE B025 A2 445 if isLetter('\16#10080;') <> TRUE then writeln("isLetter( #10080 ) incorrect"); success := FALSE; end if; # LINEAR B IDEOGRAM B100 MAN 446 if isLetter('\16#100a0;') <> TRUE then writeln("isLetter( #100a0 ) incorrect"); success := FALSE; end if; # LINEAR B IDEOGRAM B151 HORN 447 if isLetter('\16#100c0;') <> TRUE then writeln("isLetter( #100c0 ) incorrect"); success := FALSE; end if; # LINEAR B IDEOGRAM B185 448 if isLetter('\16#100e0;') <> TRUE then writeln("isLetter( #100e0 ) incorrect"); success := FALSE; end if; # LINEAR B IDEOGRAM VESSEL B201 449 if isLetter('\16#10100;') <> FALSE then writeln("isLetter( #10100 ) incorrect"); success := FALSE; end if; # AEGEAN WORD SEPARATOR LINE 450 if isLetter('\16#10110;') <> FALSE then writeln("isLetter( #10110 ) incorrect"); success := FALSE; end if; # AEGEAN NUMBER TEN 451 if isLetter('\16#10120;') <> FALSE then writeln("isLetter( #10120 ) incorrect"); success := FALSE; end if; # AEGEAN NUMBER EIGHT HUNDRED 452 if isLetter('\16#10130;') <> FALSE then writeln("isLetter( #10130 ) incorrect"); success := FALSE; end if; # AEGEAN NUMBER SIXTY THOUSAND 453 if isLetter('\16#1017c;') <> FALSE then writeln("isLetter( #1017c ) incorrect"); success := FALSE; end if; # GREEK OBOL SIGN 454 if isLetter('\16#10190;') <> FALSE then writeln("isLetter( #10190 ) incorrect"); success := FALSE; end if; # ROMAN SEXTANS SIGN 455 if isLetter('\16#101d0;') <> FALSE then writeln("isLetter( #101d0 ) incorrect"); success := FALSE; end if; # PHAISTOS DISC SIGN PEDESTRIAN 456 if isLetter('\16#101dc;') <> FALSE then writeln("isLetter( #101dc ) incorrect"); success := FALSE; end if; # PHAISTOS DISC SIGN CLUB 457 if isLetter('\16#101e8;') <> FALSE then writeln("isLetter( #101e8 ) incorrect"); success := FALSE; end if; # PHAISTOS DISC SIGN SHIP 458 if isLetter('\16#101f4;') <> FALSE then writeln("isLetter( #101f4 ) incorrect"); success := FALSE; end if; # PHAISTOS DISC SIGN PAPYRUS 459 if isLetter('\16#10300;') <> TRUE then writeln("isLetter( #10300 ) incorrect"); success := FALSE; end if; # OLD ITALIC LETTER A 460 if isLetter('\16#1030c;') <> TRUE then writeln("isLetter( #1030c ) incorrect"); success := FALSE; end if; # OLD ITALIC LETTER EM 461 if isLetter('\16#10318;') <> TRUE then writeln("isLetter( #10318 ) incorrect"); success := FALSE; end if; # OLD ITALIC LETTER PHE 462 if isLetter('\16#10330;') <> TRUE then writeln("isLetter( #10330 ) incorrect"); success := FALSE; end if; # GOTHIC LETTER AHSA 463 if isLetter('\16#10338;') <> TRUE then writeln("isLetter( #10338 ) incorrect"); success := FALSE; end if; # GOTHIC LETTER THIUTH 464 if isLetter('\16#10340;') <> TRUE then writeln("isLetter( #10340 ) incorrect"); success := FALSE; end if; # GOTHIC LETTER PAIRTHRA 465 if isLetter('\16#10348;') <> TRUE then writeln("isLetter( #10348 ) incorrect"); success := FALSE; end if; # GOTHIC LETTER HWAIR 466 if isLetter('\16#10380;') <> TRUE then writeln("isLetter( #10380 ) incorrect"); success := FALSE; end if; # UGARITIC LETTER ALPA 467 if isLetter('\16#10388;') <> TRUE then writeln("isLetter( #10388 ) incorrect"); success := FALSE; end if; # UGARITIC LETTER HOTA 468 if isLetter('\16#10390;') <> TRUE then writeln("isLetter( #10390 ) incorrect"); success := FALSE; end if; # UGARITIC LETTER NUN 469 if isLetter('\16#10398;') <> TRUE then writeln("isLetter( #10398 ) incorrect"); success := FALSE; end if; # UGARITIC LETTER THANNA 470 if isLetter('\16#103d0;') <> FALSE then writeln("isLetter( #103d0 ) incorrect"); success := FALSE; end if; # OLD PERSIAN WORD DIVIDER 471 if isLetter('\16#10400;') <> TRUE then writeln("isLetter( #10400 ) incorrect"); success := FALSE; end if; # DESERET CAPITAL LETTER LONG I 472 if isLetter('\16#10414;') <> TRUE then writeln("isLetter( #10414 ) incorrect"); success := FALSE; end if; # DESERET CAPITAL LETTER DEE 473 if isLetter('\16#10428;') <> TRUE then writeln("isLetter( #10428 ) incorrect"); success := FALSE; end if; # DESERET SMALL LETTER LONG I 474 if isLetter('\16#1043c;') <> TRUE then writeln("isLetter( #1043c ) incorrect"); success := FALSE; end if; # DESERET SMALL LETTER DEE 475 if isLetter('\16#10450;') <> TRUE then writeln("isLetter( #10450 ) incorrect"); success := FALSE; end if; # SHAVIAN LETTER PEEP 476 if isLetter('\16#1045c;') <> TRUE then writeln("isLetter( #1045c ) incorrect"); success := FALSE; end if; # SHAVIAN LETTER GAG 477 if isLetter('\16#10468;') <> TRUE then writeln("isLetter( #10468 ) incorrect"); success := FALSE; end if; # SHAVIAN LETTER ASH 478 if isLetter('\16#10474;') <> TRUE then writeln("isLetter( #10474 ) incorrect"); success := FALSE; end if; # SHAVIAN LETTER OAK 479 if isLetter('\16#10480;') <> TRUE then writeln("isLetter( #10480 ) incorrect"); success := FALSE; end if; # OSMANYA LETTER ALEF 480 if isLetter('\16#1048c;') <> TRUE then writeln("isLetter( #1048c ) incorrect"); success := FALSE; end if; # OSMANYA LETTER GA 481 if isLetter('\16#10498;') <> TRUE then writeln("isLetter( #10498 ) incorrect"); success := FALSE; end if; # OSMANYA LETTER I 482 if isLetter('\16#104a4;') <> FALSE then writeln("isLetter( #104a4 ) incorrect"); success := FALSE; end if; # OSMANYA DIGIT FOUR 483 if isLetter('\16#10800;') <> TRUE then writeln("isLetter( #10800 ) incorrect"); success := FALSE; end if; # CYPRIOT SYLLABLE A 484 if isLetter('\16#10810;') <> TRUE then writeln("isLetter( #10810 ) incorrect"); success := FALSE; end if; # CYPRIOT SYLLABLE LE 485 if isLetter('\16#10820;') <> TRUE then writeln("isLetter( #10820 ) incorrect"); success := FALSE; end if; # CYPRIOT SYLLABLE PI 486 if isLetter('\16#10830;') <> TRUE then writeln("isLetter( #10830 ) incorrect"); success := FALSE; end if; # CYPRIOT SYLLABLE TO 487 if isLetter('\16#10858;') <> FALSE then writeln("isLetter( #10858 ) incorrect"); success := FALSE; end if; # IMPERIAL ARAMAIC NUMBER ONE 488 if isLetter('\16#10918;') <> FALSE then writeln("isLetter( #10918 ) incorrect"); success := FALSE; end if; # PHOENICIAN NUMBER TWENTY 489 if isLetter('\16#10b78;') <> FALSE then writeln("isLetter( #10b78 ) incorrect"); success := FALSE; end if; # INSCRIPTIONAL PAHLAVI NUMBER ONE 490 if isLetter('\16#10e60;') <> FALSE then writeln("isLetter( #10e60 ) incorrect"); success := FALSE; end if; # RUMI DIGIT ONE 491 if isLetter('\16#10e68;') <> FALSE then writeln("isLetter( #10e68 ) incorrect"); success := FALSE; end if; # RUMI DIGIT NINE 492 if isLetter('\16#10e70;') <> FALSE then writeln("isLetter( #10e70 ) incorrect"); success := FALSE; end if; # RUMI NUMBER EIGHTY 493 if isLetter('\16#10e78;') <> FALSE then writeln("isLetter( #10e78 ) incorrect"); success := FALSE; end if; # RUMI NUMBER SEVEN HUNDRED 494 if isLetter('\16#11060;') <> FALSE then writeln("isLetter( #11060 ) incorrect"); success := FALSE; end if; # BRAHMI NUMBER SIXTY 495 if isLetter('\16#11080;') <> FALSE then writeln("isLetter( #11080 ) incorrect"); success := FALSE; end if; # KAITHI SIGN CANDRABINDU 496 if isLetter('\16#110bc;') <> FALSE then writeln("isLetter( #110bc ) incorrect"); success := FALSE; end if; # KAITHI ENUMERATION SIGN 497 if isLetter('\16#1d000;') <> FALSE then writeln("isLetter( #1d000 ) incorrect"); success := FALSE; end if; # BYZANTINE MUSICAL SYMBOL PSILI 498 if isLetter('\16#1d040;') <> FALSE then writeln("isLetter( #1d040 ) incorrect"); success := FALSE; end if; # BYZANTINE MUSICAL SYMBOL NANA 499 if isLetter('\16#1d080;') <> FALSE then writeln("isLetter( #1d080 ) incorrect"); success := FALSE; end if; # BYZANTINE MUSICAL SYMBOL DIPLI ARCHAION 500 if isLetter('\16#1d0c0;') <> FALSE then writeln("isLetter( #1d0c0 ) incorrect"); success := FALSE; end if; # BYZANTINE MUSICAL SYMBOL FTHORA DIATONIKI ZO 501 if isLetter('\16#1d100;') <> FALSE then writeln("isLetter( #1d100 ) incorrect"); success := FALSE; end if; # MUSICAL SYMBOL SINGLE BARLINE 502 if isLetter('\16#1d140;') <> FALSE then writeln("isLetter( #1d140 ) incorrect"); success := FALSE; end if; # MUSICAL SYMBOL THIRTY-SECOND REST 503 if isLetter('\16#1d180;') <> FALSE then writeln("isLetter( #1d180 ) incorrect"); success := FALSE; end if; # MUSICAL SYMBOL COMBINING MARCATO-STACCATO 504 if isLetter('\16#1d1c0;') <> FALSE then writeln("isLetter( #1d1c0 ) incorrect"); success := FALSE; end if; # MUSICAL SYMBOL FUSA BLACK 505 if isLetter('\16#1d200;') <> FALSE then writeln("isLetter( #1d200 ) incorrect"); success := FALSE; end if; # GREEK VOCAL NOTATION SYMBOL-1 506 if isLetter('\16#1d214;') <> FALSE then writeln("isLetter( #1d214 ) incorrect"); success := FALSE; end if; # GREEK VOCAL NOTATION SYMBOL-21 507 if isLetter('\16#1d228;') <> FALSE then writeln("isLetter( #1d228 ) incorrect"); success := FALSE; end if; # GREEK INSTRUMENTAL NOTATION SYMBOL-18 508 if isLetter('\16#1d23c;') <> FALSE then writeln("isLetter( #1d23c ) incorrect"); success := FALSE; end if; # GREEK INSTRUMENTAL NOTATION SYMBOL-49 509 if isLetter('\16#1d300;') <> FALSE then writeln("isLetter( #1d300 ) incorrect"); success := FALSE; end if; # MONOGRAM FOR EARTH 510 if isLetter('\16#1d318;') <> FALSE then writeln("isLetter( #1d318 ) incorrect"); success := FALSE; end if; # TETRAGRAM FOR FOLLOWING 511 if isLetter('\16#1d330;') <> FALSE then writeln("isLetter( #1d330 ) incorrect"); success := FALSE; end if; # TETRAGRAM FOR ENCOUNTERS 512 if isLetter('\16#1d348;') <> FALSE then writeln("isLetter( #1d348 ) incorrect"); success := FALSE; end if; # TETRAGRAM FOR DARKENING 513 if isLetter('\16#1d360;') <> FALSE then writeln("isLetter( #1d360 ) incorrect"); success := FALSE; end if; # COUNTING ROD UNIT DIGIT ONE 514 if isLetter('\16#1d368;') <> FALSE then writeln("isLetter( #1d368 ) incorrect"); success := FALSE; end if; # COUNTING ROD UNIT DIGIT NINE 515 if isLetter('\16#1d370;') <> FALSE then writeln("isLetter( #1d370 ) incorrect"); success := FALSE; end if; # COUNTING ROD TENS DIGIT EIGHT 516 if isLetter('\16#1d400;') <> TRUE then writeln("isLetter( #1d400 ) incorrect"); success := FALSE; end if; # MATHEMATICAL BOLD CAPITAL A 517 if isLetter('\16#1d500;') <> TRUE then writeln("isLetter( #1d500 ) incorrect"); success := FALSE; end if; # MATHEMATICAL BOLD SCRIPT SMALL W 518 if isLetter('\16#1d600;') <> TRUE then writeln("isLetter( #1d600 ) incorrect"); success := FALSE; end if; # MATHEMATICAL SANS-SERIF BOLD SMALL S 519 if isLetter('\16#1d700;') <> TRUE then writeln("isLetter( #1d700 ) incorrect"); success := FALSE; end if; # MATHEMATICAL ITALIC SMALL EPSILON 520 if isLetter('\16#1f000;') <> FALSE then writeln("isLetter( #1f000 ) incorrect"); success := FALSE; end if; # MAHJONG TILE EAST WIND 521 if isLetter('\16#1f00c;') <> FALSE then writeln("isLetter( #1f00c ) incorrect"); success := FALSE; end if; # MAHJONG TILE SIX OF CHARACTERS 522 if isLetter('\16#1f018;') <> FALSE then writeln("isLetter( #1f018 ) incorrect"); success := FALSE; end if; # MAHJONG TILE NINE OF BAMBOOS 523 if isLetter('\16#1f024;') <> FALSE then writeln("isLetter( #1f024 ) incorrect"); success := FALSE; end if; # MAHJONG TILE BAMBOO 524 if isLetter('\16#1f030;') <> FALSE then writeln("isLetter( #1f030 ) incorrect"); success := FALSE; end if; # DOMINO TILE HORIZONTAL BACK 525 if isLetter('\16#1f04c;') <> FALSE then writeln("isLetter( #1f04c ) incorrect"); success := FALSE; end if; # DOMINO TILE HORIZONTAL-03-06 526 if isLetter('\16#1f068;') <> FALSE then writeln("isLetter( #1f068 ) incorrect"); success := FALSE; end if; # DOMINO TILE VERTICAL-00-05 527 if isLetter('\16#1f084;') <> FALSE then writeln("isLetter( #1f084 ) incorrect"); success := FALSE; end if; # DOMINO TILE VERTICAL-04-05 528 if isLetter('\16#1f0a0;') <> FALSE then writeln("isLetter( #1f0a0 ) incorrect"); success := FALSE; end if; # PLAYING CARD BACK 529 if isLetter('\16#1f0b8;') <> FALSE then writeln("isLetter( #1f0b8 ) incorrect"); success := FALSE; end if; # PLAYING CARD EIGHT OF HEARTS 530 if isLetter('\16#1f100;') <> FALSE then writeln("isLetter( #1f100 ) incorrect"); success := FALSE; end if; # DIGIT ZERO FULL STOP 531 if isLetter('\16#1f140;') <> FALSE then writeln("isLetter( #1f140 ) incorrect"); success := FALSE; end if; # SQUARED LATIN CAPITAL LETTER Q 532 if isLetter('\16#1f180;') <> FALSE then writeln("isLetter( #1f180 ) incorrect"); success := FALSE; end if; # NEGATIVE SQUARED LATIN CAPITAL LETTER Q 533 if isLetter('\16#1f200;') <> FALSE then writeln("isLetter( #1f200 ) incorrect"); success := FALSE; end if; # SQUARE HIRAGANA HOKA 534 if isLetter('\16#1f240;') <> FALSE then writeln("isLetter( #1f240 ) incorrect"); success := FALSE; end if; # TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C 535 if isLetter('\16#1f300;') <> FALSE then writeln("isLetter( #1f300 ) incorrect"); success := FALSE; end if; # CYCLONE 536 if isLetter('\16#1f3c0;') <> FALSE then writeln("isLetter( #1f3c0 ) incorrect"); success := FALSE; end if; # BASKETBALL AND HOOP 537 if isLetter('\16#1f480;') <> FALSE then writeln("isLetter( #1f480 ) incorrect"); success := FALSE; end if; # SKULL 538 if isLetter('\16#1f614;') <> FALSE then writeln("isLetter( #1f614 ) incorrect"); success := FALSE; end if; # PENSIVE FACE 539 if isLetter('\16#1f628;') <> FALSE then writeln("isLetter( #1f628 ) incorrect"); success := FALSE; end if; # FEARFUL FACE 540 if isLetter('\16#1f63c;') <> FALSE then writeln("isLetter( #1f63c ) incorrect"); success := FALSE; end if; # CAT FACE WITH WRY SMILE 541 if isLetter('\16#1f680;') <> FALSE then writeln("isLetter( #1f680 ) incorrect"); success := FALSE; end if; # ROCKET 542 if isLetter('\16#1f6a0;') <> FALSE then writeln("isLetter( #1f6a0 ) incorrect"); success := FALSE; end if; # MOUNTAIN CABLEWAY 543 if isLetter('\16#1f6c0;') <> FALSE then writeln("isLetter( #1f6c0 ) incorrect"); success := FALSE; end if; # BATH 544 if isLetter('\16#1f700;') <> FALSE then writeln("isLetter( #1f700 ) incorrect"); success := FALSE; end if; # ALCHEMICAL SYMBOL FOR QUINTESSENCE 545 if isLetter('\16#1f720;') <> FALSE then writeln("isLetter( #1f720 ) incorrect"); success := FALSE; end if; # ALCHEMICAL SYMBOL FOR COPPER ORE 546 if isLetter('\16#1f740;') <> FALSE then writeln("isLetter( #1f740 ) incorrect"); success := FALSE; end if; # ALCHEMICAL SYMBOL FOR TARTAR-2 547 if isLetter('\16#1f760;') <> FALSE then writeln("isLetter( #1f760 ) incorrect"); success := FALSE; end if; # ALCHEMICAL SYMBOL FOR DISTILL 548 if isLetter('\16#20000;') <> TRUE then writeln("isLetter( #20000 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-20000 549 if isLetter('\16#229b8;') <> TRUE then writeln("isLetter( #229b8 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-229B8 550 if isLetter('\16#25370;') <> TRUE then writeln("isLetter( #25370 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-25370 551 if isLetter('\16#27d28;') <> TRUE then writeln("isLetter( #27d28 ) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-27D28 552 if isLetter('\16#2f800;') <> TRUE then writeln("isLetter( #2f800 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-2F800 553 if isLetter('\16#2f888;') <> TRUE then writeln("isLetter( #2f888 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-2F888 554 if isLetter('\16#2f910;') <> TRUE then writeln("isLetter( #2f910 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-2F910 555 if isLetter('\16#2f998;') <> TRUE then writeln("isLetter( #2f998 ) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-2F998 556 if isLetter('\16#e0020;') <> FALSE then writeln("isLetter( #e0020 ) incorrect"); success := FALSE; end if; # TAG SPACE 557 if isLetter('\16#e0040;') <> FALSE then writeln("isLetter( #e0040 ) incorrect"); success := FALSE; end if; # TAG COMMERCIAL AT 558 if isLetter('\16#e0060;') <> FALSE then writeln("isLetter( #e0060 ) incorrect"); success := FALSE; end if; # TAG GRAVE ACCENT 559 if isLetter('\16#e0100;') <> FALSE then writeln("isLetter( #e0100 ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-17 560 if isLetter('\16#e013c;') <> FALSE then writeln("isLetter( #e013c ) incorrect"); success := FALSE; end if; # VARIATION SELECTOR-77 561 if success then 562 writeln("isLetter function works correctly."); 563 end if; 564 end func; 565 566 567const proc: check_width is func 568 local 569 var boolean: success is TRUE; 570 begin 571 if width('\16#00021;') <> 1 then writeln("width(# 21) incorrect"); success := FALSE; end if; # EXCLAMATION MARK 572 if width('\16#00050;') <> 1 then writeln("width(# 50) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER P 573 if width('\16#0007f;') <> 0 then writeln("width(# 7f) incorrect"); success := FALSE; end if; # DELETE 574 if width('\16#00090;') <> 0 then writeln("width(# 90) incorrect"); success := FALSE; end if; # DEVICE CONTROL STRING 575 if width('\16#000a1;') <> 1 then writeln("width(# a1) incorrect"); success := FALSE; end if; # INVERTED EXCLAMATION MARK 576 if width('\16#000a2;') <> 1 then writeln("width(# a2) incorrect"); success := FALSE; end if; # CENT SIGN 577 if width('\16#000a3;') <> 1 then writeln("width(# a3) incorrect"); success := FALSE; end if; # POUND SIGN 578 if width('\16#000a4;') <> 1 then writeln("width(# a4) incorrect"); success := FALSE; end if; # CURRENCY SIGN 579 if width('\16#000a5;') <> 1 then writeln("width(# a5) incorrect"); success := FALSE; end if; # YEN SIGN 580 if width('\16#000a6;') <> 1 then writeln("width(# a6) incorrect"); success := FALSE; end if; # BROKEN BAR 581 if width('\16#000a7;') <> 1 then writeln("width(# a7) incorrect"); success := FALSE; end if; # SECTION SIGN 582 if width('\16#000a9;') <> 1 then writeln("width(# a9) incorrect"); success := FALSE; end if; # COPYRIGHT SIGN 583 if width('\16#000aa;') <> 1 then writeln("width(# aa) incorrect"); success := FALSE; end if; # FEMININE ORDINAL INDICATOR 584 if width('\16#000ab;') <> 1 then writeln("width(# ab) incorrect"); success := FALSE; end if; # LEFT-POINTING DOUBLE ANGLE QUOTATION MARK 585 if width('\16#000ac;') <> 1 then writeln("width(# ac) incorrect"); success := FALSE; end if; # NOT SIGN 586 if width('\16#000ae;') <> 1 then writeln("width(# ae) incorrect"); success := FALSE; end if; # REGISTERED SIGN 587 if width('\16#000b0;') <> 1 then writeln("width(# b0) incorrect"); success := FALSE; end if; # DEGREE SIGN 588 if width('\16#000b2;') <> 1 then writeln("width(# b2) incorrect"); success := FALSE; end if; # SUPERSCRIPT TWO 589 if width('\16#000b5;') <> 1 then writeln("width(# b5) incorrect"); success := FALSE; end if; # MICRO SIGN 590 if width('\16#000b6;') <> 1 then writeln("width(# b6) incorrect"); success := FALSE; end if; # PILCROW SIGN 591 if width('\16#000bb;') <> 1 then writeln("width(# bb) incorrect"); success := FALSE; end if; # RIGHT-POINTING DOUBLE ANGLE QUOTATION MARK 592 if width('\16#000bc;') <> 1 then writeln("width(# bc) incorrect"); success := FALSE; end if; # VULGAR FRACTION ONE QUARTER 593 if width('\16#000be;') <> 1 then writeln("width(# be) incorrect"); success := FALSE; end if; # VULGAR FRACTION THREE QUARTERS 594 if width('\16#000c0;') <> 1 then writeln("width(# c0) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH GRAVE 595 if width('\16#000c3;') <> 1 then writeln("width(# c3) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH TILDE 596 if width('\16#000c6;') <> 1 then writeln("width(# c6) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER AE 597 if width('\16#000c7;') <> 1 then writeln("width(# c7) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER C WITH CEDILLA 598 if width('\16#000cb;') <> 1 then writeln("width(# cb) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER E WITH DIAERESIS 599 if width('\16#000d0;') <> 1 then writeln("width(# d0) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER ETH 600 if width('\16#000d1;') <> 1 then writeln("width(# d1) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER N WITH TILDE 601 if width('\16#000d4;') <> 1 then writeln("width(# d4) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH CIRCUMFLEX 602 if width('\16#000d7;') <> 1 then writeln("width(# d7) incorrect"); success := FALSE; end if; # MULTIPLICATION SIGN 603 if width('\16#000d8;') <> 1 then writeln("width(# d8) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH STROKE 604 if width('\16#000d9;') <> 1 then writeln("width(# d9) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH GRAVE 605 if width('\16#000db;') <> 1 then writeln("width(# db) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH CIRCUMFLEX 606 if width('\16#000de;') <> 1 then writeln("width(# de) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER THORN 607 if width('\16#000e0;') <> 1 then writeln("width(# e0) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH GRAVE 608 if width('\16#000e2;') <> 1 then writeln("width(# e2) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH CIRCUMFLEX 609 if width('\16#000e4;') <> 1 then writeln("width(# e4) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH DIAERESIS 610 if width('\16#000e6;') <> 1 then writeln("width(# e6) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER AE 611 if width('\16#000e7;') <> 1 then writeln("width(# e7) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER C WITH CEDILLA 612 if width('\16#000e8;') <> 1 then writeln("width(# e8) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH GRAVE 613 if width('\16#000e9;') <> 1 then writeln("width(# e9) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH ACUTE 614 if width('\16#000eb;') <> 1 then writeln("width(# eb) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH DIAERESIS 615 if width('\16#000ec;') <> 1 then writeln("width(# ec) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH GRAVE 616 if width('\16#000ed;') <> 1 then writeln("width(# ed) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH ACUTE 617 if width('\16#000ee;') <> 1 then writeln("width(# ee) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH CIRCUMFLEX 618 if width('\16#000ef;') <> 1 then writeln("width(# ef) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH DIAERESIS 619 if width('\16#000f0;') <> 1 then writeln("width(# f0) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER ETH 620 if width('\16#000f1;') <> 1 then writeln("width(# f1) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER N WITH TILDE 621 if width('\16#000f2;') <> 1 then writeln("width(# f2) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH GRAVE 622 if width('\16#000f3;') <> 1 then writeln("width(# f3) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH ACUTE 623 if width('\16#000f4;') <> 1 then writeln("width(# f4) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH CIRCUMFLEX 624 if width('\16#000f5;') <> 1 then writeln("width(# f5) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH TILDE 625 if width('\16#000f7;') <> 1 then writeln("width(# f7) incorrect"); success := FALSE; end if; # DIVISION SIGN 626 if width('\16#000f9;') <> 1 then writeln("width(# f9) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH GRAVE 627 if width('\16#000fb;') <> 1 then writeln("width(# fb) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH CIRCUMFLEX 628 if width('\16#000fc;') <> 1 then writeln("width(# fc) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH DIAERESIS 629 if width('\16#000fd;') <> 1 then writeln("width(# fd) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER Y WITH ACUTE 630 if width('\16#000fe;') <> 1 then writeln("width(# fe) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER THORN 631 if width('\16#000ff;') <> 1 then writeln("width(# ff) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER Y WITH DIAERESIS 632 if width('\16#00100;') <> 1 then writeln("width(# 100) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH MACRON 633 if width('\16#00101;') <> 1 then writeln("width(# 101) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH MACRON 634 if width('\16#00102;') <> 1 then writeln("width(# 102) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER A WITH BREVE 635 if width('\16#00109;') <> 1 then writeln("width(# 109) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER C WITH CIRCUMFLEX 636 if width('\16#00111;') <> 1 then writeln("width(# 111) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER D WITH STROKE 637 if width('\16#00112;') <> 1 then writeln("width(# 112) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER E WITH MACRON 638 if width('\16#00113;') <> 1 then writeln("width(# 113) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH MACRON 639 if width('\16#00114;') <> 1 then writeln("width(# 114) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER E WITH BREVE 640 if width('\16#00117;') <> 1 then writeln("width(# 117) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH DOT ABOVE 641 if width('\16#0011b;') <> 1 then writeln("width(# 11b) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER E WITH CARON 642 if width('\16#0011c;') <> 1 then writeln("width(# 11c) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER G WITH CIRCUMFLEX 643 if width('\16#00121;') <> 1 then writeln("width(# 121) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER G WITH DOT ABOVE 644 if width('\16#00126;') <> 1 then writeln("width(# 126) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER H WITH STROKE 645 if width('\16#00127;') <> 1 then writeln("width(# 127) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER H WITH STROKE 646 if width('\16#00128;') <> 1 then writeln("width(# 128) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER I WITH TILDE 647 if width('\16#00129;') <> 1 then writeln("width(# 129) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH TILDE 648 if width('\16#0012b;') <> 1 then writeln("width(# 12b) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH MACRON 649 if width('\16#0012c;') <> 1 then writeln("width(# 12c) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER I WITH BREVE 650 if width('\16#0012e;') <> 1 then writeln("width(# 12e) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER I WITH OGONEK 651 if width('\16#00131;') <> 1 then writeln("width(# 131) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER DOTLESS I 652 if width('\16#00132;') <> 1 then writeln("width(# 132) incorrect"); success := FALSE; end if; # LATIN CAPITAL LIGATURE IJ 653 if width('\16#00134;') <> 1 then writeln("width(# 134) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER J WITH CIRCUMFLEX 654 if width('\16#00136;') <> 1 then writeln("width(# 136) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER K WITH CEDILLA 655 if width('\16#00138;') <> 1 then writeln("width(# 138) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER KRA 656 if width('\16#00139;') <> 1 then writeln("width(# 139) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER L WITH ACUTE 657 if width('\16#0013c;') <> 1 then writeln("width(# 13c) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER L WITH CEDILLA 658 if width('\16#0013f;') <> 1 then writeln("width(# 13f) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER L WITH MIDDLE DOT 659 if width('\16#00141;') <> 1 then writeln("width(# 141) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER L WITH STROKE 660 if width('\16#00143;') <> 1 then writeln("width(# 143) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER N WITH ACUTE 661 if width('\16#00144;') <> 1 then writeln("width(# 144) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER N WITH ACUTE 662 if width('\16#00145;') <> 1 then writeln("width(# 145) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER N WITH CEDILLA 663 if width('\16#00146;') <> 1 then writeln("width(# 146) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER N WITH CEDILLA 664 if width('\16#00148;') <> 1 then writeln("width(# 148) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER N WITH CARON 665 if width('\16#0014a;') <> 1 then writeln("width(# 14a) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER ENG 666 if width('\16#0014c;') <> 1 then writeln("width(# 14c) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH MACRON 667 if width('\16#0014d;') <> 1 then writeln("width(# 14d) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH MACRON 668 if width('\16#0014e;') <> 1 then writeln("width(# 14e) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH BREVE 669 if width('\16#00150;') <> 1 then writeln("width(# 150) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH DOUBLE ACUTE 670 if width('\16#00152;') <> 1 then writeln("width(# 152) incorrect"); success := FALSE; end if; # LATIN CAPITAL LIGATURE OE 671 if width('\16#00153;') <> 1 then writeln("width(# 153) incorrect"); success := FALSE; end if; # LATIN SMALL LIGATURE OE 672 if width('\16#00154;') <> 1 then writeln("width(# 154) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER R WITH ACUTE 673 if width('\16#0015d;') <> 1 then writeln("width(# 15d) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER S WITH CIRCUMFLEX 674 if width('\16#00166;') <> 1 then writeln("width(# 166) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER T WITH STROKE 675 if width('\16#00167;') <> 1 then writeln("width(# 167) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER T WITH STROKE 676 if width('\16#00168;') <> 1 then writeln("width(# 168) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH TILDE 677 if width('\16#00169;') <> 1 then writeln("width(# 169) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH TILDE 678 if width('\16#0016b;') <> 1 then writeln("width(# 16b) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH MACRON 679 if width('\16#0016c;') <> 1 then writeln("width(# 16c) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH BREVE 680 if width('\16#0019d;') <> 1 then writeln("width(# 19d) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER N WITH LEFT HOOK 681 if width('\16#001ce;') <> 1 then writeln("width(# 1ce) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER A WITH CARON 682 if width('\16#001cf;') <> 1 then writeln("width(# 1cf) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER I WITH CARON 683 if width('\16#001d0;') <> 1 then writeln("width(# 1d0) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER I WITH CARON 684 if width('\16#001d1;') <> 1 then writeln("width(# 1d1) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER O WITH CARON 685 if width('\16#001d2;') <> 1 then writeln("width(# 1d2) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER O WITH CARON 686 if width('\16#001d3;') <> 1 then writeln("width(# 1d3) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH CARON 687 if width('\16#001d4;') <> 1 then writeln("width(# 1d4) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH CARON 688 if width('\16#001d5;') <> 1 then writeln("width(# 1d5) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH DIAERESIS AND MACRON 689 if width('\16#001d6;') <> 1 then writeln("width(# 1d6) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH DIAERESIS AND MACRON 690 if width('\16#001d7;') <> 1 then writeln("width(# 1d7) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH DIAERESIS AND ACUTE 691 if width('\16#001d8;') <> 1 then writeln("width(# 1d8) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH DIAERESIS AND ACUTE 692 if width('\16#001d9;') <> 1 then writeln("width(# 1d9) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH DIAERESIS AND CARON 693 if width('\16#001da;') <> 1 then writeln("width(# 1da) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH DIAERESIS AND CARON 694 if width('\16#001db;') <> 1 then writeln("width(# 1db) incorrect"); success := FALSE; end if; # LATIN CAPITAL LETTER U WITH DIAERESIS AND GRAVE 695 if width('\16#001dc;') <> 1 then writeln("width(# 1dc) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH DIAERESIS AND GRAVE 696 if width('\16#001dd;') <> 1 then writeln("width(# 1dd) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER TURNED E 697 if width('\16#00217;') <> 1 then writeln("width(# 217) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER U WITH INVERTED BREVE 698 if width('\16#00251;') <> 1 then writeln("width(# 251) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER ALPHA 699 if width('\16#00252;') <> 1 then writeln("width(# 252) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER TURNED ALPHA 700 if width('\16#00259;') <> 1 then writeln("width(# 259) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER SCHWA 701 if width('\16#00261;') <> 1 then writeln("width(# 261) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER SCRIPT G 702 if width('\16#00262;') <> 1 then writeln("width(# 262) incorrect"); success := FALSE; end if; # LATIN LETTER SMALL CAPITAL G 703 if width('\16#00293;') <> 1 then writeln("width(# 293) incorrect"); success := FALSE; end if; # LATIN SMALL LETTER EZH WITH CURL 704 if width('\16#00300;') <> 0 then writeln("width(# 300) incorrect"); success := FALSE; end if; # COMBINING GRAVE ACCENT 705 if width('\16#00338;') <> 0 then writeln("width(# 338) incorrect"); success := FALSE; end if; # COMBINING LONG SOLIDUS OVERLAY 706 if width('\16#00370;') <> 1 then writeln("width(# 370) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER HETA 707 if width('\16#00380;') <> 1 then writeln("width(# 380) incorrect"); success := FALSE; end if; # <unassigned-0380> 708 if width('\16#00391;') <> 1 then writeln("width(# 391) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER ALPHA 709 if width('\16#00399;') <> 1 then writeln("width(# 399) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER IOTA 710 if width('\16#003a2;') <> 1 then writeln("width(# 3a2) incorrect"); success := FALSE; end if; # <unassigned-03A2> 711 if width('\16#003a3;') <> 1 then writeln("width(# 3a3) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER SIGMA 712 if width('\16#003a6;') <> 1 then writeln("width(# 3a6) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER PHI 713 if width('\16#003aa;') <> 1 then writeln("width(# 3aa) incorrect"); success := FALSE; end if; # GREEK CAPITAL LETTER IOTA WITH DIALYTIKA 714 if width('\16#003ad;') <> 1 then writeln("width(# 3ad) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER EPSILON WITH TONOS 715 if width('\16#003b1;') <> 1 then writeln("width(# 3b1) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER ALPHA 716 if width('\16#003b9;') <> 1 then writeln("width(# 3b9) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER IOTA 717 if width('\16#003c2;') <> 1 then writeln("width(# 3c2) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER FINAL SIGMA 718 if width('\16#003c3;') <> 1 then writeln("width(# 3c3) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER SIGMA 719 if width('\16#003c6;') <> 1 then writeln("width(# 3c6) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER PHI 720 if width('\16#003ca;') <> 1 then writeln("width(# 3ca) incorrect"); success := FALSE; end if; # GREEK SMALL LETTER IOTA WITH DIALYTIKA 721 if width('\16#003e5;') <> 1 then writeln("width(# 3e5) incorrect"); success := FALSE; end if; # COPTIC SMALL LETTER FEI 722 if width('\16#00401;') <> 1 then writeln("width(# 401) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER IO 723 if width('\16#00402;') <> 1 then writeln("width(# 402) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER DJE 724 if width('\16#00409;') <> 1 then writeln("width(# 409) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER LJE 725 if width('\16#00410;') <> 1 then writeln("width(# 410) incorrect"); success := FALSE; end if; # CYRILLIC CAPITAL LETTER A 726 if width('\16#00430;') <> 1 then writeln("width(# 430) incorrect"); success := FALSE; end if; # CYRILLIC SMALL LETTER A 727 if width('\16#00450;') <> 1 then writeln("width(# 450) incorrect"); success := FALSE; end if; # CYRILLIC SMALL LETTER IE WITH GRAVE 728 if width('\16#00451;') <> 1 then writeln("width(# 451) incorrect"); success := FALSE; end if; # CYRILLIC SMALL LETTER IO 729 if width('\16#00452;') <> 1 then writeln("width(# 452) incorrect"); success := FALSE; end if; # CYRILLIC SMALL LETTER DJE 730 if width('\16#00aa9;') <> 1 then writeln("width(# aa9) incorrect"); success := FALSE; end if; # <unassigned-0AA9> 731 if width('\16#01100;') <> 1 then writeln("width(# 1100) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG KIYEOK 732 if width('\16#01130;') <> 2 then writeln("width(# 1130) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG SIOS-RIEUL 733 if width('\16#01160;') <> 2 then writeln("width(# 1160) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG FILLER 734 if width('\16#01181;') <> 1 then writeln("width(# 1181) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG O-YE 735 if width('\16#011a3;') <> 1 then writeln("width(# 11a3) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG A-EU 736 if width('\16#011a5;') <> 1 then writeln("width(# 11a5) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG YEO-YA 737 if width('\16#011a8;') <> 1 then writeln("width(# 11a8) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG KIYEOK 738 if width('\16#011d1;') <> 1 then writeln("width(# 11d1) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG RIEUL-MIEUM-KIYEOK 739 if width('\16#011fa;') <> 1 then writeln("width(# 11fa) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG KIYEOK-NIEUN 740 if width('\16#011fd;') <> 1 then writeln("width(# 11fd) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG KIYEOK-KHIEUKH 741 if width('\16#01200;') <> 1 then writeln("width(# 1200) incorrect"); success := FALSE; end if; # ETHIOPIC SYLLABLE HA 742 if width('\16#01908;') <> 1 then writeln("width(# 1908) incorrect"); success := FALSE; end if; # LIMBU LETTER JA 743 if width('\16#02010;') <> 1 then writeln("width(# 2010) incorrect"); success := FALSE; end if; # HYPHEN 744 if width('\16#02011;') <> 1 then writeln("width(# 2011) incorrect"); success := FALSE; end if; # NON-BREAKING HYPHEN 745 if width('\16#02012;') <> 1 then writeln("width(# 2012) incorrect"); success := FALSE; end if; # FIGURE DASH 746 if width('\16#02013;') <> 1 then writeln("width(# 2013) incorrect"); success := FALSE; end if; # EN DASH 747 if width('\16#02015;') <> 1 then writeln("width(# 2015) incorrect"); success := FALSE; end if; # HORIZONTAL BAR 748 if width('\16#02017;') <> 1 then writeln("width(# 2017) incorrect"); success := FALSE; end if; # DOUBLE LOW LINE 749 if width('\16#02018;') <> 1 then writeln("width(# 2018) incorrect"); success := FALSE; end if; # LEFT SINGLE QUOTATION MARK 750 if width('\16#02019;') <> 1 then writeln("width(# 2019) incorrect"); success := FALSE; end if; # RIGHT SINGLE QUOTATION MARK 751 if width('\16#0201a;') <> 1 then writeln("width(# 201a) incorrect"); success := FALSE; end if; # SINGLE LOW-9 QUOTATION MARK 752 if width('\16#0201b;') <> 1 then writeln("width(# 201b) incorrect"); success := FALSE; end if; # SINGLE HIGH-REVERSED-9 QUOTATION MARK 753 if width('\16#0201c;') <> 1 then writeln("width(# 201c) incorrect"); success := FALSE; end if; # LEFT DOUBLE QUOTATION MARK 754 if width('\16#0201d;') <> 1 then writeln("width(# 201d) incorrect"); success := FALSE; end if; # RIGHT DOUBLE QUOTATION MARK 755 if width('\16#0201e;') <> 1 then writeln("width(# 201e) incorrect"); success := FALSE; end if; # DOUBLE LOW-9 QUOTATION MARK 756 if width('\16#0201f;') <> 1 then writeln("width(# 201f) incorrect"); success := FALSE; end if; # DOUBLE HIGH-REVERSED-9 QUOTATION MARK 757 if width('\16#02020;') <> 1 then writeln("width(# 2020) incorrect"); success := FALSE; end if; # DAGGER 758 if width('\16#02021;') <> 1 then writeln("width(# 2021) incorrect"); success := FALSE; end if; # DOUBLE DAGGER 759 if width('\16#02023;') <> 1 then writeln("width(# 2023) incorrect"); success := FALSE; end if; # TRIANGULAR BULLET 760 if width('\16#02024;') <> 1 then writeln("width(# 2024) incorrect"); success := FALSE; end if; # ONE DOT LEADER 761 if width('\16#02026;') <> 1 then writeln("width(# 2026) incorrect"); success := FALSE; end if; # HORIZONTAL ELLIPSIS 762 if width('\16#02028;') <> 1 then writeln("width(# 2028) incorrect"); success := FALSE; end if; # LINE SEPARATOR 763 if width('\16#0202c;') <> 1 then writeln("width(# 202c) incorrect"); success := FALSE; end if; # POP DIRECTIONAL FORMATTING 764 if width('\16#02030;') <> 1 then writeln("width(# 2030) incorrect"); success := FALSE; end if; # PER MILLE SIGN 765 if width('\16#02031;') <> 1 then writeln("width(# 2031) incorrect"); success := FALSE; end if; # PER TEN THOUSAND SIGN 766 if width('\16#02032;') <> 1 then writeln("width(# 2032) incorrect"); success := FALSE; end if; # PRIME 767 if width('\16#02033;') <> 1 then writeln("width(# 2033) incorrect"); success := FALSE; end if; # DOUBLE PRIME 768 if width('\16#02034;') <> 1 then writeln("width(# 2034) incorrect"); success := FALSE; end if; # TRIPLE PRIME 769 if width('\16#02035;') <> 1 then writeln("width(# 2035) incorrect"); success := FALSE; end if; # REVERSED PRIME 770 if width('\16#02036;') <> 1 then writeln("width(# 2036) incorrect"); success := FALSE; end if; # REVERSED DOUBLE PRIME 771 if width('\16#02038;') <> 1 then writeln("width(# 2038) incorrect"); success := FALSE; end if; # CARET 772 if width('\16#0203b;') <> 1 then writeln("width(# 203b) incorrect"); success := FALSE; end if; # REFERENCE MARK 773 if width('\16#0203c;') <> 1 then writeln("width(# 203c) incorrect"); success := FALSE; end if; # DOUBLE EXCLAMATION MARK 774 if width('\16#0203d;') <> 1 then writeln("width(# 203d) incorrect"); success := FALSE; end if; # INTERROBANG 775 if width('\16#0203e;') <> 1 then writeln("width(# 203e) incorrect"); success := FALSE; end if; # OVERLINE 776 if width('\16#0203f;') <> 1 then writeln("width(# 203f) incorrect"); success := FALSE; end if; # UNDERTIE 777 if width('\16#02059;') <> 1 then writeln("width(# 2059) incorrect"); success := FALSE; end if; # FIVE DOT PUNCTUATION 778 if width('\16#02074;') <> 1 then writeln("width(# 2074) incorrect"); success := FALSE; end if; # SUPERSCRIPT FOUR 779 if width('\16#02075;') <> 1 then writeln("width(# 2075) incorrect"); success := FALSE; end if; # SUPERSCRIPT FIVE 780 if width('\16#0207a;') <> 1 then writeln("width(# 207a) incorrect"); success := FALSE; end if; # SUPERSCRIPT PLUS SIGN 781 if width('\16#0207f;') <> 1 then writeln("width(# 207f) incorrect"); success := FALSE; end if; # SUPERSCRIPT LATIN SMALL LETTER N 782 if width('\16#02080;') <> 1 then writeln("width(# 2080) incorrect"); success := FALSE; end if; # SUBSCRIPT ZERO 783 if width('\16#02081;') <> 1 then writeln("width(# 2081) incorrect"); success := FALSE; end if; # SUBSCRIPT ONE 784 if width('\16#02083;') <> 1 then writeln("width(# 2083) incorrect"); success := FALSE; end if; # SUBSCRIPT THREE 785 if width('\16#02085;') <> 1 then writeln("width(# 2085) incorrect"); success := FALSE; end if; # SUBSCRIPT FIVE 786 if width('\16#02097;') <> 1 then writeln("width(# 2097) incorrect"); success := FALSE; end if; # LATIN SUBSCRIPT SMALL LETTER L 787 if width('\16#020a9;') <> 1 then writeln("width(# 20a9) incorrect"); success := FALSE; end if; # WON SIGN 788 if width('\16#020aa;') <> 1 then writeln("width(# 20aa) incorrect"); success := FALSE; end if; # NEW SHEQEL SIGN 789 if width('\16#020ab;') <> 1 then writeln("width(# 20ab) incorrect"); success := FALSE; end if; # DONG SIGN 790 if width('\16#020ac;') <> 1 then writeln("width(# 20ac) incorrect"); success := FALSE; end if; # EURO SIGN 791 if width('\16#020ad;') <> 1 then writeln("width(# 20ad) incorrect"); success := FALSE; end if; # KIP SIGN 792 if width('\16#020d8;') <> 0 then writeln("width(# 20d8) incorrect"); success := FALSE; end if; # COMBINING RING OVERLAY 793 if width('\16#02103;') <> 1 then writeln("width(# 2103) incorrect"); success := FALSE; end if; # DEGREE CELSIUS 794 if width('\16#02104;') <> 1 then writeln("width(# 2104) incorrect"); success := FALSE; end if; # CENTRE LINE SYMBOL 795 if width('\16#02105;') <> 1 then writeln("width(# 2105) incorrect"); success := FALSE; end if; # CARE OF 796 if width('\16#02106;') <> 1 then writeln("width(# 2106) incorrect"); success := FALSE; end if; # CADA UNA 797 if width('\16#02107;') <> 1 then writeln("width(# 2107) incorrect"); success := FALSE; end if; # EULER CONSTANT 798 if width('\16#02109;') <> 1 then writeln("width(# 2109) incorrect"); success := FALSE; end if; # DEGREE FAHRENHEIT 799 if width('\16#0210a;') <> 1 then writeln("width(# 210a) incorrect"); success := FALSE; end if; # SCRIPT SMALL G 800 if width('\16#0210e;') <> 1 then writeln("width(# 210e) incorrect"); success := FALSE; end if; # PLANCK CONSTANT 801 if width('\16#02113;') <> 1 then writeln("width(# 2113) incorrect"); success := FALSE; end if; # SCRIPT SMALL L 802 if width('\16#02114;') <> 1 then writeln("width(# 2114) incorrect"); success := FALSE; end if; # L B BAR SYMBOL 803 if width('\16#02115;') <> 1 then writeln("width(# 2115) incorrect"); success := FALSE; end if; # DOUBLE-STRUCK CAPITAL N 804 if width('\16#02116;') <> 1 then writeln("width(# 2116) incorrect"); success := FALSE; end if; # NUMERO SIGN 805 if width('\16#02117;') <> 1 then writeln("width(# 2117) incorrect"); success := FALSE; end if; # SOUND RECORDING COPYRIGHT 806 if width('\16#0211c;') <> 1 then writeln("width(# 211c) incorrect"); success := FALSE; end if; # BLACK-LETTER CAPITAL R 807 if width('\16#02121;') <> 1 then writeln("width(# 2121) incorrect"); success := FALSE; end if; # TELEPHONE SIGN 808 if width('\16#02122;') <> 1 then writeln("width(# 2122) incorrect"); success := FALSE; end if; # TRADE MARK SIGN 809 if width('\16#02123;') <> 1 then writeln("width(# 2123) incorrect"); success := FALSE; end if; # VERSICLE 810 if width('\16#02124;') <> 1 then writeln("width(# 2124) incorrect"); success := FALSE; end if; # DOUBLE-STRUCK CAPITAL Z 811 if width('\16#02126;') <> 1 then writeln("width(# 2126) incorrect"); success := FALSE; end if; # OHM SIGN 812 if width('\16#02127;') <> 1 then writeln("width(# 2127) incorrect"); success := FALSE; end if; # INVERTED OHM SIGN 813 if width('\16#02129;') <> 1 then writeln("width(# 2129) incorrect"); success := FALSE; end if; # TURNED GREEK SMALL LETTER IOTA 814 if width('\16#0212b;') <> 1 then writeln("width(# 212b) incorrect"); success := FALSE; end if; # ANGSTROM SIGN 815 if width('\16#0212c;') <> 1 then writeln("width(# 212c) incorrect"); success := FALSE; end if; # SCRIPT CAPITAL B 816 if width('\16#0213f;') <> 1 then writeln("width(# 213f) incorrect"); success := FALSE; end if; # DOUBLE-STRUCK CAPITAL PI 817 if width('\16#02153;') <> 1 then writeln("width(# 2153) incorrect"); success := FALSE; end if; # VULGAR FRACTION ONE THIRD 818 if width('\16#02154;') <> 1 then writeln("width(# 2154) incorrect"); success := FALSE; end if; # VULGAR FRACTION TWO THIRDS 819 if width('\16#02155;') <> 1 then writeln("width(# 2155) incorrect"); success := FALSE; end if; # VULGAR FRACTION ONE FIFTH 820 if width('\16#02158;') <> 1 then writeln("width(# 2158) incorrect"); success := FALSE; end if; # VULGAR FRACTION FOUR FIFTHS 821 if width('\16#0215b;') <> 1 then writeln("width(# 215b) incorrect"); success := FALSE; end if; # VULGAR FRACTION ONE EIGHTH 822 if width('\16#0215d;') <> 1 then writeln("width(# 215d) incorrect"); success := FALSE; end if; # VULGAR FRACTION FIVE EIGHTHS 823 if width('\16#0215f;') <> 1 then writeln("width(# 215f) incorrect"); success := FALSE; end if; # FRACTION NUMERATOR ONE 824 if width('\16#02160;') <> 1 then writeln("width(# 2160) incorrect"); success := FALSE; end if; # ROMAN NUMERAL ONE 825 if width('\16#02166;') <> 1 then writeln("width(# 2166) incorrect"); success := FALSE; end if; # ROMAN NUMERAL SEVEN 826 if width('\16#0216c;') <> 1 then writeln("width(# 216c) incorrect"); success := FALSE; end if; # ROMAN NUMERAL FIFTY 827 if width('\16#0216e;') <> 1 then writeln("width(# 216e) incorrect"); success := FALSE; end if; # ROMAN NUMERAL FIVE HUNDRED 828 if width('\16#02170;') <> 1 then writeln("width(# 2170) incorrect"); success := FALSE; end if; # SMALL ROMAN NUMERAL ONE 829 if width('\16#02175;') <> 1 then writeln("width(# 2175) incorrect"); success := FALSE; end if; # SMALL ROMAN NUMERAL SIX 830 if width('\16#0217a;') <> 1 then writeln("width(# 217a) incorrect"); success := FALSE; end if; # SMALL ROMAN NUMERAL ELEVEN 831 if width('\16#02181;') <> 1 then writeln("width(# 2181) incorrect"); success := FALSE; end if; # ROMAN NUMERAL FIVE THOUSAND 832 if width('\16#02189;') <> 1 then writeln("width(# 2189) incorrect"); success := FALSE; end if; # VULGAR FRACTION ZERO THIRDS 833 if width('\16#0218a;') <> 1 then writeln("width(# 218a) incorrect"); success := FALSE; end if; # <unassigned-218A> 834 if width('\16#0218d;') <> 1 then writeln("width(# 218d) incorrect"); success := FALSE; end if; # <unassigned-218D> 835 if width('\16#02190;') <> 1 then writeln("width(# 2190) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW 836 if width('\16#02195;') <> 1 then writeln("width(# 2195) incorrect"); success := FALSE; end if; # UP DOWN ARROW 837 if width('\16#0219a;') <> 1 then writeln("width(# 219a) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW WITH STROKE 838 if width('\16#021a9;') <> 1 then writeln("width(# 21a9) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW WITH HOOK 839 if width('\16#021b8;') <> 1 then writeln("width(# 21b8) incorrect"); success := FALSE; end if; # NORTH WEST ARROW TO LONG BAR 840 if width('\16#021b9;') <> 1 then writeln("width(# 21b9) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW TO BAR OVER RIGHTWARDS ARROW TO BAR 841 if width('\16#021ba;') <> 1 then writeln("width(# 21ba) incorrect"); success := FALSE; end if; # ANTICLOCKWISE OPEN CIRCLE ARROW 842 if width('\16#021c6;') <> 1 then writeln("width(# 21c6) incorrect"); success := FALSE; end if; # LEFTWARDS ARROW OVER RIGHTWARDS ARROW 843 if width('\16#021d2;') <> 1 then writeln("width(# 21d2) incorrect"); success := FALSE; end if; # RIGHTWARDS DOUBLE ARROW 844 if width('\16#021d3;') <> 1 then writeln("width(# 21d3) incorrect"); success := FALSE; end if; # DOWNWARDS DOUBLE ARROW 845 if width('\16#021d4;') <> 1 then writeln("width(# 21d4) incorrect"); success := FALSE; end if; # LEFT RIGHT DOUBLE ARROW 846 if width('\16#021d5;') <> 1 then writeln("width(# 21d5) incorrect"); success := FALSE; end if; # UP DOWN DOUBLE ARROW 847 if width('\16#021de;') <> 1 then writeln("width(# 21de) incorrect"); success := FALSE; end if; # UPWARDS ARROW WITH DOUBLE STROKE 848 if width('\16#021e7;') <> 1 then writeln("width(# 21e7) incorrect"); success := FALSE; end if; # UPWARDS WHITE ARROW 849 if width('\16#021e8;') <> 1 then writeln("width(# 21e8) incorrect"); success := FALSE; end if; # RIGHTWARDS WHITE ARROW 850 if width('\16#021f4;') <> 1 then writeln("width(# 21f4) incorrect"); success := FALSE; end if; # RIGHT ARROW WITH SMALL CIRCLE 851 if width('\16#02200;') <> 1 then writeln("width(# 2200) incorrect"); success := FALSE; end if; # FOR ALL 852 if width('\16#02201;') <> 1 then writeln("width(# 2201) incorrect"); success := FALSE; end if; # COMPLEMENT 853 if width('\16#02202;') <> 1 then writeln("width(# 2202) incorrect"); success := FALSE; end if; # PARTIAL DIFFERENTIAL 854 if width('\16#02203;') <> 1 then writeln("width(# 2203) incorrect"); success := FALSE; end if; # THERE EXISTS 855 if width('\16#02204;') <> 1 then writeln("width(# 2204) incorrect"); success := FALSE; end if; # THERE DOES NOT EXIST 856 if width('\16#02205;') <> 1 then writeln("width(# 2205) incorrect"); success := FALSE; end if; # EMPTY SET 857 if width('\16#02207;') <> 1 then writeln("width(# 2207) incorrect"); success := FALSE; end if; # NABLA 858 if width('\16#02208;') <> 1 then writeln("width(# 2208) incorrect"); success := FALSE; end if; # ELEMENT OF 859 if width('\16#02209;') <> 1 then writeln("width(# 2209) incorrect"); success := FALSE; end if; # NOT AN ELEMENT OF 860 if width('\16#0220a;') <> 1 then writeln("width(# 220a) incorrect"); success := FALSE; end if; # SMALL ELEMENT OF 861 if width('\16#0220b;') <> 1 then writeln("width(# 220b) incorrect"); success := FALSE; end if; # CONTAINS AS MEMBER 862 if width('\16#0220c;') <> 1 then writeln("width(# 220c) incorrect"); success := FALSE; end if; # DOES NOT CONTAIN AS MEMBER 863 if width('\16#0220d;') <> 1 then writeln("width(# 220d) incorrect"); success := FALSE; end if; # SMALL CONTAINS AS MEMBER 864 if width('\16#0220f;') <> 1 then writeln("width(# 220f) incorrect"); success := FALSE; end if; # N-ARY PRODUCT 865 if width('\16#02210;') <> 1 then writeln("width(# 2210) incorrect"); success := FALSE; end if; # N-ARY COPRODUCT 866 if width('\16#02211;') <> 1 then writeln("width(# 2211) incorrect"); success := FALSE; end if; # N-ARY SUMMATION 867 if width('\16#02212;') <> 1 then writeln("width(# 2212) incorrect"); success := FALSE; end if; # MINUS SIGN 868 if width('\16#02213;') <> 1 then writeln("width(# 2213) incorrect"); success := FALSE; end if; # MINUS-OR-PLUS SIGN 869 if width('\16#02215;') <> 1 then writeln("width(# 2215) incorrect"); success := FALSE; end if; # DIVISION SLASH 870 if width('\16#02216;') <> 1 then writeln("width(# 2216) incorrect"); success := FALSE; end if; # SET MINUS 871 if width('\16#02218;') <> 1 then writeln("width(# 2218) incorrect"); success := FALSE; end if; # RING OPERATOR 872 if width('\16#0221a;') <> 1 then writeln("width(# 221a) incorrect"); success := FALSE; end if; # SQUARE ROOT 873 if width('\16#0221b;') <> 1 then writeln("width(# 221b) incorrect"); success := FALSE; end if; # CUBE ROOT 874 if width('\16#0221c;') <> 1 then writeln("width(# 221c) incorrect"); success := FALSE; end if; # FOURTH ROOT 875 if width('\16#0221d;') <> 1 then writeln("width(# 221d) incorrect"); success := FALSE; end if; # PROPORTIONAL TO 876 if width('\16#0221f;') <> 1 then writeln("width(# 221f) incorrect"); success := FALSE; end if; # RIGHT ANGLE 877 if width('\16#02221;') <> 1 then writeln("width(# 2221) incorrect"); success := FALSE; end if; # MEASURED ANGLE 878 if width('\16#02222;') <> 1 then writeln("width(# 2222) incorrect"); success := FALSE; end if; # SPHERICAL ANGLE 879 if width('\16#02223;') <> 1 then writeln("width(# 2223) incorrect"); success := FALSE; end if; # DIVIDES 880 if width('\16#02224;') <> 1 then writeln("width(# 2224) incorrect"); success := FALSE; end if; # DOES NOT DIVIDE 881 if width('\16#02225;') <> 1 then writeln("width(# 2225) incorrect"); success := FALSE; end if; # PARALLEL TO 882 if width('\16#02226;') <> 1 then writeln("width(# 2226) incorrect"); success := FALSE; end if; # NOT PARALLEL TO 883 if width('\16#02227;') <> 1 then writeln("width(# 2227) incorrect"); success := FALSE; end if; # LOGICAL AND 884 if width('\16#0222a;') <> 1 then writeln("width(# 222a) incorrect"); success := FALSE; end if; # UNION 885 if width('\16#0222d;') <> 1 then writeln("width(# 222d) incorrect"); success := FALSE; end if; # TRIPLE INTEGRAL 886 if width('\16#0222e;') <> 1 then writeln("width(# 222e) incorrect"); success := FALSE; end if; # CONTOUR INTEGRAL 887 if width('\16#0222f;') <> 1 then writeln("width(# 222f) incorrect"); success := FALSE; end if; # SURFACE INTEGRAL 888 if width('\16#02231;') <> 1 then writeln("width(# 2231) incorrect"); success := FALSE; end if; # CLOCKWISE INTEGRAL 889 if width('\16#02234;') <> 1 then writeln("width(# 2234) incorrect"); success := FALSE; end if; # THEREFORE 890 if width('\16#02236;') <> 1 then writeln("width(# 2236) incorrect"); success := FALSE; end if; # RATIO 891 if width('\16#02238;') <> 1 then writeln("width(# 2238) incorrect"); success := FALSE; end if; # DOT MINUS 892 if width('\16#0223a;') <> 1 then writeln("width(# 223a) incorrect"); success := FALSE; end if; # GEOMETRIC PROPORTION 893 if width('\16#0223c;') <> 1 then writeln("width(# 223c) incorrect"); success := FALSE; end if; # TILDE OPERATOR 894 if width('\16#0223d;') <> 1 then writeln("width(# 223d) incorrect"); success := FALSE; end if; # REVERSED TILDE 895 if width('\16#0223e;') <> 1 then writeln("width(# 223e) incorrect"); success := FALSE; end if; # INVERTED LAZY S 896 if width('\16#02243;') <> 1 then writeln("width(# 2243) incorrect"); success := FALSE; end if; # ASYMPTOTICALLY EQUAL TO 897 if width('\16#02248;') <> 1 then writeln("width(# 2248) incorrect"); success := FALSE; end if; # ALMOST EQUAL TO 898 if width('\16#02249;') <> 1 then writeln("width(# 2249) incorrect"); success := FALSE; end if; # NOT ALMOST EQUAL TO 899 if width('\16#0224a;') <> 1 then writeln("width(# 224a) incorrect"); success := FALSE; end if; # ALMOST EQUAL OR EQUAL TO 900 if width('\16#0224c;') <> 1 then writeln("width(# 224c) incorrect"); success := FALSE; end if; # ALL EQUAL TO 901 if width('\16#0224d;') <> 1 then writeln("width(# 224d) incorrect"); success := FALSE; end if; # EQUIVALENT TO 902 if width('\16#0224f;') <> 1 then writeln("width(# 224f) incorrect"); success := FALSE; end if; # DIFFERENCE BETWEEN 903 if width('\16#02252;') <> 1 then writeln("width(# 2252) incorrect"); success := FALSE; end if; # APPROXIMATELY EQUAL TO OR THE IMAGE OF 904 if width('\16#02253;') <> 1 then writeln("width(# 2253) incorrect"); success := FALSE; end if; # IMAGE OF OR APPROXIMATELY EQUAL TO 905 if width('\16#02259;') <> 1 then writeln("width(# 2259) incorrect"); success := FALSE; end if; # ESTIMATES 906 if width('\16#02260;') <> 1 then writeln("width(# 2260) incorrect"); success := FALSE; end if; # NOT EQUAL TO 907 if width('\16#02261;') <> 1 then writeln("width(# 2261) incorrect"); success := FALSE; end if; # IDENTICAL TO 908 if width('\16#02262;') <> 1 then writeln("width(# 2262) incorrect"); success := FALSE; end if; # NOT IDENTICAL TO 909 if width('\16#02263;') <> 1 then writeln("width(# 2263) incorrect"); success := FALSE; end if; # STRICTLY EQUIVALENT TO 910 if width('\16#02264;') <> 1 then writeln("width(# 2264) incorrect"); success := FALSE; end if; # LESS-THAN OR EQUAL TO 911 if width('\16#02266;') <> 1 then writeln("width(# 2266) incorrect"); success := FALSE; end if; # LESS-THAN OVER EQUAL TO 912 if width('\16#02268;') <> 1 then writeln("width(# 2268) incorrect"); success := FALSE; end if; # LESS-THAN BUT NOT EQUAL TO 913 if width('\16#02269;') <> 1 then writeln("width(# 2269) incorrect"); success := FALSE; end if; # GREATER-THAN BUT NOT EQUAL TO 914 if width('\16#0226a;') <> 1 then writeln("width(# 226a) incorrect"); success := FALSE; end if; # MUCH LESS-THAN 915 if width('\16#0226b;') <> 1 then writeln("width(# 226b) incorrect"); success := FALSE; end if; # MUCH GREATER-THAN 916 if width('\16#0226c;') <> 1 then writeln("width(# 226c) incorrect"); success := FALSE; end if; # BETWEEN 917 if width('\16#0226d;') <> 1 then writeln("width(# 226d) incorrect"); success := FALSE; end if; # NOT EQUIVALENT TO 918 if width('\16#0226e;') <> 1 then writeln("width(# 226e) incorrect"); success := FALSE; end if; # NOT LESS-THAN 919 if width('\16#0226f;') <> 1 then writeln("width(# 226f) incorrect"); success := FALSE; end if; # NOT GREATER-THAN 920 if width('\16#02270;') <> 1 then writeln("width(# 2270) incorrect"); success := FALSE; end if; # NEITHER LESS-THAN NOR EQUAL TO 921 if width('\16#02279;') <> 1 then writeln("width(# 2279) incorrect"); success := FALSE; end if; # NEITHER GREATER-THAN NOR LESS-THAN 922 if width('\16#02282;') <> 1 then writeln("width(# 2282) incorrect"); success := FALSE; end if; # SUBSET OF 923 if width('\16#02283;') <> 1 then writeln("width(# 2283) incorrect"); success := FALSE; end if; # SUPERSET OF 924 if width('\16#02284;') <> 1 then writeln("width(# 2284) incorrect"); success := FALSE; end if; # NOT A SUBSET OF 925 if width('\16#02285;') <> 1 then writeln("width(# 2285) incorrect"); success := FALSE; end if; # NOT A SUPERSET OF 926 if width('\16#02286;') <> 1 then writeln("width(# 2286) incorrect"); success := FALSE; end if; # SUBSET OF OR EQUAL TO 927 if width('\16#02287;') <> 1 then writeln("width(# 2287) incorrect"); success := FALSE; end if; # SUPERSET OF OR EQUAL TO 928 if width('\16#02288;') <> 1 then writeln("width(# 2288) incorrect"); success := FALSE; end if; # NEITHER A SUBSET OF NOR EQUAL TO 929 if width('\16#0228e;') <> 1 then writeln("width(# 228e) incorrect"); success := FALSE; end if; # MULTISET UNION 930 if width('\16#02295;') <> 1 then writeln("width(# 2295) incorrect"); success := FALSE; end if; # CIRCLED PLUS 931 if width('\16#02296;') <> 1 then writeln("width(# 2296) incorrect"); success := FALSE; end if; # CIRCLED MINUS 932 if width('\16#02297;') <> 1 then writeln("width(# 2297) incorrect"); success := FALSE; end if; # CIRCLED TIMES 933 if width('\16#02299;') <> 1 then writeln("width(# 2299) incorrect"); success := FALSE; end if; # CIRCLED DOT OPERATOR 934 if width('\16#0229a;') <> 1 then writeln("width(# 229a) incorrect"); success := FALSE; end if; # CIRCLED RING OPERATOR 935 if width('\16#0229f;') <> 1 then writeln("width(# 229f) incorrect"); success := FALSE; end if; # SQUARED MINUS 936 if width('\16#022a5;') <> 1 then writeln("width(# 22a5) incorrect"); success := FALSE; end if; # UP TACK 937 if width('\16#022a6;') <> 1 then writeln("width(# 22a6) incorrect"); success := FALSE; end if; # ASSERTION 938 if width('\16#022b2;') <> 1 then writeln("width(# 22b2) incorrect"); success := FALSE; end if; # NORMAL SUBGROUP OF 939 if width('\16#022bf;') <> 1 then writeln("width(# 22bf) incorrect"); success := FALSE; end if; # RIGHT TRIANGLE 940 if width('\16#022c0;') <> 1 then writeln("width(# 22c0) incorrect"); success := FALSE; end if; # N-ARY LOGICAL AND 941 if width('\16#022e9;') <> 1 then writeln("width(# 22e9) incorrect"); success := FALSE; end if; # SUCCEEDS BUT NOT EQUIVALENT TO 942 if width('\16#02312;') <> 1 then writeln("width(# 2312) incorrect"); success := FALSE; end if; # ARC 943 if width('\16#02313;') <> 1 then writeln("width(# 2313) incorrect"); success := FALSE; end if; # SEGMENT 944 if width('\16#0231e;') <> 1 then writeln("width(# 231e) incorrect"); success := FALSE; end if; # BOTTOM LEFT CORNER 945 if width('\16#02329;') <> 1 then writeln("width(# 2329) incorrect"); success := FALSE; end if; # LEFT-POINTING ANGLE BRACKET 946 if width('\16#0232a;') <> 2 then writeln("width(# 232a) incorrect"); success := FALSE; end if; # RIGHT-POINTING ANGLE BRACKET 947 if width('\16#0232b;') <> 2 then writeln("width(# 232b) incorrect"); success := FALSE; end if; # ERASE TO THE LEFT 948 if width('\16#023c5;') <> 1 then writeln("width(# 23c5) incorrect"); success := FALSE; end if; # DENTISTRY SYMBOL LIGHT UP AND HORIZONTAL WITH TRIANGLE 949 if width('\16#02460;') <> 1 then writeln("width(# 2460) incorrect"); success := FALSE; end if; # CIRCLED DIGIT ONE 950 if width('\16#024a5;') <> 1 then writeln("width(# 24a5) incorrect"); success := FALSE; end if; # PARENTHESIZED LATIN SMALL LETTER J 951 if width('\16#024ea;') <> 1 then writeln("width(# 24ea) incorrect"); success := FALSE; end if; # CIRCLED DIGIT ZERO 952 if width('\16#024eb;') <> 1 then writeln("width(# 24eb) incorrect"); success := FALSE; end if; # NEGATIVE CIRCLED NUMBER ELEVEN 953 if width('\16#0251b;') <> 1 then writeln("width(# 251b) incorrect"); success := FALSE; end if; # BOX DRAWINGS HEAVY UP AND LEFT 954 if width('\16#0254c;') <> 1 then writeln("width(# 254c) incorrect"); success := FALSE; end if; # BOX DRAWINGS LIGHT DOUBLE DASH HORIZONTAL 955 if width('\16#0254e;') <> 1 then writeln("width(# 254e) incorrect"); success := FALSE; end if; # BOX DRAWINGS LIGHT DOUBLE DASH VERTICAL 956 if width('\16#02550;') <> 1 then writeln("width(# 2550) incorrect"); success := FALSE; end if; # BOX DRAWINGS DOUBLE HORIZONTAL 957 if width('\16#02562;') <> 1 then writeln("width(# 2562) incorrect"); success := FALSE; end if; # BOX DRAWINGS VERTICAL DOUBLE AND LEFT SINGLE 958 if width('\16#02574;') <> 1 then writeln("width(# 2574) incorrect"); success := FALSE; end if; # BOX DRAWINGS LIGHT LEFT 959 if width('\16#0257a;') <> 1 then writeln("width(# 257a) incorrect"); success := FALSE; end if; # BOX DRAWINGS HEAVY RIGHT 960 if width('\16#02580;') <> 1 then writeln("width(# 2580) incorrect"); success := FALSE; end if; # UPPER HALF BLOCK 961 if width('\16#02588;') <> 1 then writeln("width(# 2588) incorrect"); success := FALSE; end if; # FULL BLOCK 962 if width('\16#02590;') <> 1 then writeln("width(# 2590) incorrect"); success := FALSE; end if; # RIGHT HALF BLOCK 963 if width('\16#02591;') <> 1 then writeln("width(# 2591) incorrect"); success := FALSE; end if; # LIGHT SHADE 964 if width('\16#02592;') <> 1 then writeln("width(# 2592) incorrect"); success := FALSE; end if; # MEDIUM SHADE 965 if width('\16#02594;') <> 1 then writeln("width(# 2594) incorrect"); success := FALSE; end if; # UPPER ONE EIGHTH BLOCK 966 if width('\16#02596;') <> 1 then writeln("width(# 2596) incorrect"); success := FALSE; end if; # QUADRANT LOWER LEFT 967 if width('\16#0259b;') <> 1 then writeln("width(# 259b) incorrect"); success := FALSE; end if; # QUADRANT UPPER LEFT AND UPPER RIGHT AND LOWER LEFT 968 if width('\16#025a0;') <> 1 then writeln("width(# 25a0) incorrect"); success := FALSE; end if; # BLACK SQUARE 969 if width('\16#025a1;') <> 1 then writeln("width(# 25a1) incorrect"); success := FALSE; end if; # WHITE SQUARE 970 if width('\16#025a2;') <> 1 then writeln("width(# 25a2) incorrect"); success := FALSE; end if; # WHITE SQUARE WITH ROUNDED CORNERS 971 if width('\16#025a3;') <> 1 then writeln("width(# 25a3) incorrect"); success := FALSE; end if; # WHITE SQUARE CONTAINING BLACK SMALL SQUARE 972 if width('\16#025a6;') <> 1 then writeln("width(# 25a6) incorrect"); success := FALSE; end if; # SQUARE WITH ORTHOGONAL CROSSHATCH FILL 973 if width('\16#025aa;') <> 1 then writeln("width(# 25aa) incorrect"); success := FALSE; end if; # BLACK SMALL SQUARE 974 if width('\16#025ae;') <> 1 then writeln("width(# 25ae) incorrect"); success := FALSE; end if; # BLACK VERTICAL RECTANGLE 975 if width('\16#025b2;') <> 1 then writeln("width(# 25b2) incorrect"); success := FALSE; end if; # BLACK UP-POINTING TRIANGLE 976 if width('\16#025b3;') <> 1 then writeln("width(# 25b3) incorrect"); success := FALSE; end if; # WHITE UP-POINTING TRIANGLE 977 if width('\16#025b4;') <> 1 then writeln("width(# 25b4) incorrect"); success := FALSE; end if; # BLACK UP-POINTING SMALL TRIANGLE 978 if width('\16#025b5;') <> 1 then writeln("width(# 25b5) incorrect"); success := FALSE; end if; # WHITE UP-POINTING SMALL TRIANGLE 979 if width('\16#025b6;') <> 1 then writeln("width(# 25b6) incorrect"); success := FALSE; end if; # BLACK RIGHT-POINTING TRIANGLE 980 if width('\16#025b7;') <> 1 then writeln("width(# 25b7) incorrect"); success := FALSE; end if; # WHITE RIGHT-POINTING TRIANGLE 981 if width('\16#025b8;') <> 1 then writeln("width(# 25b8) incorrect"); success := FALSE; end if; # BLACK RIGHT-POINTING SMALL TRIANGLE 982 if width('\16#025ba;') <> 1 then writeln("width(# 25ba) incorrect"); success := FALSE; end if; # BLACK RIGHT-POINTING POINTER 983 if width('\16#025bc;') <> 1 then writeln("width(# 25bc) incorrect"); success := FALSE; end if; # BLACK DOWN-POINTING TRIANGLE 984 if width('\16#025bd;') <> 1 then writeln("width(# 25bd) incorrect"); success := FALSE; end if; # WHITE DOWN-POINTING TRIANGLE 985 if width('\16#025be;') <> 1 then writeln("width(# 25be) incorrect"); success := FALSE; end if; # BLACK DOWN-POINTING SMALL TRIANGLE 986 if width('\16#025bf;') <> 1 then writeln("width(# 25bf) incorrect"); success := FALSE; end if; # WHITE DOWN-POINTING SMALL TRIANGLE 987 if width('\16#025c0;') <> 1 then writeln("width(# 25c0) incorrect"); success := FALSE; end if; # BLACK LEFT-POINTING TRIANGLE 988 if width('\16#025c1;') <> 1 then writeln("width(# 25c1) incorrect"); success := FALSE; end if; # WHITE LEFT-POINTING TRIANGLE 989 if width('\16#025c2;') <> 1 then writeln("width(# 25c2) incorrect"); success := FALSE; end if; # BLACK LEFT-POINTING SMALL TRIANGLE 990 if width('\16#025c4;') <> 1 then writeln("width(# 25c4) incorrect"); success := FALSE; end if; # BLACK LEFT-POINTING POINTER 991 if width('\16#025c6;') <> 1 then writeln("width(# 25c6) incorrect"); success := FALSE; end if; # BLACK DIAMOND 992 if width('\16#025c7;') <> 1 then writeln("width(# 25c7) incorrect"); success := FALSE; end if; # WHITE DIAMOND 993 if width('\16#025c9;') <> 1 then writeln("width(# 25c9) incorrect"); success := FALSE; end if; # FISHEYE 994 if width('\16#025ca;') <> 1 then writeln("width(# 25ca) incorrect"); success := FALSE; end if; # LOZENGE 995 if width('\16#025cb;') <> 1 then writeln("width(# 25cb) incorrect"); success := FALSE; end if; # WHITE CIRCLE 996 if width('\16#025cc;') <> 1 then writeln("width(# 25cc) incorrect"); success := FALSE; end if; # DOTTED CIRCLE 997 if width('\16#025cd;') <> 1 then writeln("width(# 25cd) incorrect"); success := FALSE; end if; # CIRCLE WITH VERTICAL FILL 998 if width('\16#025ce;') <> 1 then writeln("width(# 25ce) incorrect"); success := FALSE; end if; # BULLSEYE 999 if width('\16#025d0;') <> 1 then writeln("width(# 25d0) incorrect"); success := FALSE; end if; # CIRCLE WITH LEFT HALF BLACK 1000 if width('\16#025d2;') <> 1 then writeln("width(# 25d2) incorrect"); success := FALSE; end if; # CIRCLE WITH LOWER HALF BLACK 1001 if width('\16#025da;') <> 1 then writeln("width(# 25da) incorrect"); success := FALSE; end if; # UPPER HALF INVERSE WHITE CIRCLE 1002 if width('\16#025e2;') <> 1 then writeln("width(# 25e2) incorrect"); success := FALSE; end if; # BLACK LOWER RIGHT TRIANGLE 1003 if width('\16#025e4;') <> 1 then writeln("width(# 25e4) incorrect"); success := FALSE; end if; # BLACK UPPER LEFT TRIANGLE 1004 if width('\16#025e6;') <> 1 then writeln("width(# 25e6) incorrect"); success := FALSE; end if; # WHITE BULLET 1005 if width('\16#025ea;') <> 1 then writeln("width(# 25ea) incorrect"); success := FALSE; end if; # SQUARE WITH LOWER RIGHT DIAGONAL HALF BLACK 1006 if width('\16#025ef;') <> 1 then writeln("width(# 25ef) incorrect"); success := FALSE; end if; # LARGE CIRCLE 1007 if width('\16#025f0;') <> 1 then writeln("width(# 25f0) incorrect"); success := FALSE; end if; # WHITE SQUARE WITH UPPER LEFT QUADRANT 1008 if width('\16#025fa;') <> 1 then writeln("width(# 25fa) incorrect"); success := FALSE; end if; # LOWER LEFT TRIANGLE 1009 if width('\16#02605;') <> 1 then writeln("width(# 2605) incorrect"); success := FALSE; end if; # BLACK STAR 1010 if width('\16#02606;') <> 1 then writeln("width(# 2606) incorrect"); success := FALSE; end if; # WHITE STAR 1011 if width('\16#02607;') <> 1 then writeln("width(# 2607) incorrect"); success := FALSE; end if; # LIGHTNING 1012 if width('\16#02608;') <> 1 then writeln("width(# 2608) incorrect"); success := FALSE; end if; # THUNDERSTORM 1013 if width('\16#02609;') <> 1 then writeln("width(# 2609) incorrect"); success := FALSE; end if; # SUN 1014 if width('\16#0260a;') <> 1 then writeln("width(# 260a) incorrect"); success := FALSE; end if; # ASCENDING NODE 1015 if width('\16#0260c;') <> 1 then writeln("width(# 260c) incorrect"); success := FALSE; end if; # CONJUNCTION 1016 if width('\16#0260e;') <> 1 then writeln("width(# 260e) incorrect"); success := FALSE; end if; # BLACK TELEPHONE 1017 if width('\16#0260f;') <> 1 then writeln("width(# 260f) incorrect"); success := FALSE; end if; # WHITE TELEPHONE 1018 if width('\16#02610;') <> 1 then writeln("width(# 2610) incorrect"); success := FALSE; end if; # BALLOT BOX 1019 if width('\16#02612;') <> 1 then writeln("width(# 2612) incorrect"); success := FALSE; end if; # BALLOT BOX WITH X 1020 if width('\16#02614;') <> 1 then writeln("width(# 2614) incorrect"); success := FALSE; end if; # UMBRELLA WITH RAIN DROPS 1021 if width('\16#02615;') <> 1 then writeln("width(# 2615) incorrect"); success := FALSE; end if; # HOT BEVERAGE 1022 if width('\16#02616;') <> 1 then writeln("width(# 2616) incorrect"); success := FALSE; end if; # WHITE SHOGI PIECE 1023 if width('\16#02619;') <> 1 then writeln("width(# 2619) incorrect"); success := FALSE; end if; # REVERSED ROTATED FLORAL HEART BULLET 1024 if width('\16#0261c;') <> 1 then writeln("width(# 261c) incorrect"); success := FALSE; end if; # WHITE LEFT POINTING INDEX 1025 if width('\16#0261d;') <> 1 then writeln("width(# 261d) incorrect"); success := FALSE; end if; # WHITE UP POINTING INDEX 1026 if width('\16#0261e;') <> 1 then writeln("width(# 261e) incorrect"); success := FALSE; end if; # WHITE RIGHT POINTING INDEX 1027 if width('\16#0261f;') <> 1 then writeln("width(# 261f) incorrect"); success := FALSE; end if; # WHITE DOWN POINTING INDEX 1028 if width('\16#0262f;') <> 1 then writeln("width(# 262f) incorrect"); success := FALSE; end if; # YIN YANG 1029 if width('\16#02640;') <> 1 then writeln("width(# 2640) incorrect"); success := FALSE; end if; # FEMALE SIGN 1030 if width('\16#02641;') <> 1 then writeln("width(# 2641) incorrect"); success := FALSE; end if; # EARTH 1031 if width('\16#02642;') <> 1 then writeln("width(# 2642) incorrect"); success := FALSE; end if; # MALE SIGN 1032 if width('\16#02643;') <> 1 then writeln("width(# 2643) incorrect"); success := FALSE; end if; # JUPITER 1033 if width('\16#02651;') <> 1 then writeln("width(# 2651) incorrect"); success := FALSE; end if; # CAPRICORN 1034 if width('\16#02660;') <> 1 then writeln("width(# 2660) incorrect"); success := FALSE; end if; # BLACK SPADE SUIT 1035 if width('\16#02661;') <> 1 then writeln("width(# 2661) incorrect"); success := FALSE; end if; # WHITE HEART SUIT 1036 if width('\16#02662;') <> 1 then writeln("width(# 2662) incorrect"); success := FALSE; end if; # WHITE DIAMOND SUIT 1037 if width('\16#02663;') <> 1 then writeln("width(# 2663) incorrect"); success := FALSE; end if; # BLACK CLUB SUIT 1038 if width('\16#02664;') <> 1 then writeln("width(# 2664) incorrect"); success := FALSE; end if; # WHITE SPADE SUIT 1039 if width('\16#02666;') <> 1 then writeln("width(# 2666) incorrect"); success := FALSE; end if; # BLACK DIAMOND SUIT 1040 if width('\16#02667;') <> 1 then writeln("width(# 2667) incorrect"); success := FALSE; end if; # WHITE CLUB SUIT 1041 if width('\16#02669;') <> 1 then writeln("width(# 2669) incorrect"); success := FALSE; end if; # QUARTER NOTE 1042 if width('\16#0266b;') <> 1 then writeln("width(# 266b) incorrect"); success := FALSE; end if; # BEAMED EIGHTH NOTES 1043 if width('\16#0266c;') <> 1 then writeln("width(# 266c) incorrect"); success := FALSE; end if; # BEAMED SIXTEENTH NOTES 1044 if width('\16#0266d;') <> 1 then writeln("width(# 266d) incorrect"); success := FALSE; end if; # MUSIC FLAT SIGN 1045 if width('\16#0266e;') <> 1 then writeln("width(# 266e) incorrect"); success := FALSE; end if; # MUSIC NATURAL SIGN 1046 if width('\16#0266f;') <> 1 then writeln("width(# 266f) incorrect"); success := FALSE; end if; # MUSIC SHARP SIGN 1047 if width('\16#02670;') <> 1 then writeln("width(# 2670) incorrect"); success := FALSE; end if; # WEST SYRIAC CROSS 1048 if width('\16#02687;') <> 1 then writeln("width(# 2687) incorrect"); success := FALSE; end if; # WHITE CIRCLE WITH TWO DOTS 1049 if width('\16#0269e;') <> 1 then writeln("width(# 269e) incorrect"); success := FALSE; end if; # THREE LINES CONVERGING RIGHT 1050 if width('\16#0269f;') <> 1 then writeln("width(# 269f) incorrect"); success := FALSE; end if; # THREE LINES CONVERGING LEFT 1051 if width('\16#026a0;') <> 1 then writeln("width(# 26a0) incorrect"); success := FALSE; end if; # WARNING SIGN 1052 if width('\16#026af;') <> 1 then writeln("width(# 26af) incorrect"); success := FALSE; end if; # UNMARRIED PARTNERSHIP SYMBOL 1053 if width('\16#026be;') <> 1 then writeln("width(# 26be) incorrect"); success := FALSE; end if; # BASEBALL 1054 if width('\16#026bf;') <> 1 then writeln("width(# 26bf) incorrect"); success := FALSE; end if; # SQUARED KEY 1055 if width('\16#026c0;') <> 1 then writeln("width(# 26c0) incorrect"); success := FALSE; end if; # WHITE DRAUGHTS MAN 1056 if width('\16#026c2;') <> 1 then writeln("width(# 26c2) incorrect"); success := FALSE; end if; # BLACK DRAUGHTS MAN 1057 if width('\16#026c4;') <> 1 then writeln("width(# 26c4) incorrect"); success := FALSE; end if; # SNOWMAN WITHOUT SNOW 1058 if width('\16#026c9;') <> 1 then writeln("width(# 26c9) incorrect"); success := FALSE; end if; # TURNED WHITE SHOGI PIECE 1059 if width('\16#026ce;') <> 1 then writeln("width(# 26ce) incorrect"); success := FALSE; end if; # OPHIUCHUS 1060 if width('\16#026cf;') <> 1 then writeln("width(# 26cf) incorrect"); success := FALSE; end if; # PICK 1061 if width('\16#026d8;') <> 1 then writeln("width(# 26d8) incorrect"); success := FALSE; end if; # BLACK LEFT LANE MERGE 1062 if width('\16#026e2;') <> 1 then writeln("width(# 26e2) incorrect"); success := FALSE; end if; # ASTRONOMICAL SYMBOL FOR URANUS 1063 if width('\16#026e3;') <> 1 then writeln("width(# 26e3) incorrect"); success := FALSE; end if; # HEAVY CIRCLE WITH STROKE AND TWO DOTS ABOVE 1064 if width('\16#026e4;') <> 1 then writeln("width(# 26e4) incorrect"); success := FALSE; end if; # PENTAGRAM 1065 if width('\16#026e6;') <> 1 then writeln("width(# 26e6) incorrect"); success := FALSE; end if; # LEFT-HANDED INTERLACED PENTAGRAM 1066 if width('\16#026e8;') <> 1 then writeln("width(# 26e8) incorrect"); success := FALSE; end if; # BLACK CROSS ON SHIELD 1067 if width('\16#026f4;') <> 1 then writeln("width(# 26f4) incorrect"); success := FALSE; end if; # FERRY 1068 if width('\16#02700;') <> 1 then writeln("width(# 2700) incorrect"); success := FALSE; end if; # <unassigned-2700> 1069 if width('\16#0271e;') <> 1 then writeln("width(# 271e) incorrect"); success := FALSE; end if; # SHADOWED WHITE LATIN CROSS 1070 if width('\16#0273d;') <> 1 then writeln("width(# 273d) incorrect"); success := FALSE; end if; # HEAVY TEARDROP-SPOKED ASTERISK 1071 if width('\16#0273e;') <> 1 then writeln("width(# 273e) incorrect"); success := FALSE; end if; # SIX PETALLED BLACK AND WHITE FLORETTE 1072 if width('\16#0274a;') <> 1 then writeln("width(# 274a) incorrect"); success := FALSE; end if; # EIGHT TEARDROP-SPOKED PROPELLER ASTERISK 1073 if width('\16#02757;') <> 1 then writeln("width(# 2757) incorrect"); success := FALSE; end if; # HEAVY EXCLAMATION MARK SYMBOL 1074 if width('\16#02758;') <> 1 then writeln("width(# 2758) incorrect"); success := FALSE; end if; # LIGHT VERTICAL BAR 1075 if width('\16#02767;') <> 1 then writeln("width(# 2767) incorrect"); success := FALSE; end if; # ROTATED FLORAL HEART BULLET 1076 if width('\16#02776;') <> 1 then writeln("width(# 2776) incorrect"); success := FALSE; end if; # DINGBAT NEGATIVE CIRCLED DIGIT ONE 1077 if width('\16#0277b;') <> 1 then writeln("width(# 277b) incorrect"); success := FALSE; end if; # DINGBAT NEGATIVE CIRCLED DIGIT SIX 1078 if width('\16#02780;') <> 1 then writeln("width(# 2780) incorrect"); success := FALSE; end if; # DINGBAT CIRCLED SANS-SERIF DIGIT ONE 1079 if width('\16#027b3;') <> 1 then writeln("width(# 27b3) incorrect"); success := FALSE; end if; # WHITE-FEATHERED RIGHTWARDS ARROW 1080 if width('\16#027e6;') <> 1 then writeln("width(# 27e6) incorrect"); success := FALSE; end if; # MATHEMATICAL LEFT WHITE SQUARE BRACKET 1081 if width('\16#027ea;') <> 1 then writeln("width(# 27ea) incorrect"); success := FALSE; end if; # MATHEMATICAL LEFT DOUBLE ANGLE BRACKET 1082 if width('\16#027ee;') <> 1 then writeln("width(# 27ee) incorrect"); success := FALSE; end if; # MATHEMATICAL LEFT FLATTENED PARENTHESIS 1083 if width('\16#028b9;') <> 1 then writeln("width(# 28b9) incorrect"); success := FALSE; end if; # BRAILLE PATTERN DOTS-14568 1084 if width('\16#02985;') <> 1 then writeln("width(# 2985) incorrect"); success := FALSE; end if; # LEFT WHITE PARENTHESIS 1085 if width('\16#02986;') <> 1 then writeln("width(# 2986) incorrect"); success := FALSE; end if; # RIGHT WHITE PARENTHESIS 1086 if width('\16#02987;') <> 1 then writeln("width(# 2987) incorrect"); success := FALSE; end if; # Z NOTATION LEFT IMAGE BRACKET 1087 if width('\16#02a6e;') <> 1 then writeln("width(# 2a6e) incorrect"); success := FALSE; end if; # EQUALS WITH ASTERISK 1088 if width('\16#02b55;') <> 1 then writeln("width(# 2b55) incorrect"); success := FALSE; end if; # HEAVY LARGE CIRCLE 1089 if width('\16#02b57;') <> 1 then writeln("width(# 2b57) incorrect"); success := FALSE; end if; # HEAVY CIRCLE WITH CIRCLE INSIDE 1090 if width('\16#02b5a;') <> 1 then writeln("width(# 2b5a) incorrect"); success := FALSE; end if; # <unassigned-2B5A> 1091 if width('\16#02ced;') <> 1 then writeln("width(# 2ced) incorrect"); success := FALSE; end if; # COPTIC CAPITAL LETTER CRYPTOGRAMMIC GANGIA 1092 if width('\16#02e80;') <> 1 then writeln("width(# 2e80) incorrect"); success := FALSE; end if; # CJK RADICAL REPEAT 1093 if width('\16#02e8d;') <> 2 then writeln("width(# 2e8d) incorrect"); success := FALSE; end if; # CJK RADICAL SMALL TWO 1094 if width('\16#02e9b;') <> 1 then writeln("width(# 2e9b) incorrect"); success := FALSE; end if; # CJK RADICAL CHOKE 1095 if width('\16#02ec7;') <> 2 then writeln("width(# 2ec7) incorrect"); success := FALSE; end if; # CJK RADICAL HORN 1096 if width('\16#02efa;') <> 1 then writeln("width(# 2efa) incorrect"); success := FALSE; end if; # <unassigned-2EFA> 1097 if width('\16#02f00;') <> 1 then writeln("width(# 2f00) incorrect"); success := FALSE; end if; # KANGXI RADICAL ONE 1098 if width('\16#02f6b;') <> 2 then writeln("width(# 2f6b) incorrect"); success := FALSE; end if; # KANGXI RADICAL DISH 1099 if width('\16#02ff0;') <> 1 then writeln("width(# 2ff0) incorrect"); success := FALSE; end if; # IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT 1100 if width('\16#02ff6;') <> 2 then writeln("width(# 2ff6) incorrect"); success := FALSE; end if; # IDEOGRAPHIC DESCRIPTION CHARACTER SURROUND FROM BELOW 1101 if width('\16#03000;') <> 1 then writeln("width(# 3000) incorrect"); success := FALSE; end if; # IDEOGRAPHIC SPACE 1102 if width('\16#03001;') <> 2 then writeln("width(# 3001) incorrect"); success := FALSE; end if; # IDEOGRAPHIC COMMA 1103 if width('\16#03020;') <> 2 then writeln("width(# 3020) incorrect"); success := FALSE; end if; # POSTAL MARK FACE 1104 if width('\16#0303f;') <> 2 then writeln("width(# 303f) incorrect"); success := FALSE; end if; # IDEOGRAPHIC HALF FILL SPACE 1105 if width('\16#03040;') <> 1 then writeln("width(# 3040) incorrect"); success := FALSE; end if; # <unassigned-3040> 1106 if width('\16#03041;') <> 1 then writeln("width(# 3041) incorrect"); success := FALSE; end if; # HIRAGANA LETTER SMALL A 1107 if width('\16#0306c;') <> 2 then writeln("width(# 306c) incorrect"); success := FALSE; end if; # HIRAGANA LETTER NU 1108 if width('\16#03099;') <> 0 then writeln("width(# 3099) incorrect"); success := FALSE; end if; # COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK 1109 if width('\16#030cc;') <> 2 then writeln("width(# 30cc) incorrect"); success := FALSE; end if; # KATAKANA LETTER NU 1110 if width('\16#03105;') <> 1 then writeln("width(# 3105) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER B 1111 if width('\16#03119;') <> 2 then writeln("width(# 3119) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER S 1112 if width('\16#0312e;') <> 1 then writeln("width(# 312e) incorrect"); success := FALSE; end if; # <unassigned-312E> 1113 if width('\16#0312f;') <> 1 then writeln("width(# 312f) incorrect"); success := FALSE; end if; # <unassigned-312F> 1114 if width('\16#03131;') <> 1 then writeln("width(# 3131) incorrect"); success := FALSE; end if; # HANGUL LETTER KIYEOK 1115 if width('\16#03160;') <> 2 then writeln("width(# 3160) incorrect"); success := FALSE; end if; # HANGUL LETTER YU 1116 if width('\16#03190;') <> 1 then writeln("width(# 3190) incorrect"); success := FALSE; end if; # IDEOGRAPHIC ANNOTATION LINKING MARK 1117 if width('\16#031a5;') <> 2 then writeln("width(# 31a5) incorrect"); success := FALSE; end if; # BOPOMOFO LETTER ENN 1118 if width('\16#031bb;') <> 1 then writeln("width(# 31bb) incorrect"); success := FALSE; end if; # <unassigned-31BB> 1119 if width('\16#031bd;') <> 1 then writeln("width(# 31bd) incorrect"); success := FALSE; end if; # <unassigned-31BD> 1120 if width('\16#031c0;') <> 1 then writeln("width(# 31c0) incorrect"); success := FALSE; end if; # CJK STROKE T 1121 if width('\16#031d2;') <> 1 then writeln("width(# 31d2) incorrect"); success := FALSE; end if; # CJK STROKE P 1122 if width('\16#031e4;') <> 1 then writeln("width(# 31e4) incorrect"); success := FALSE; end if; # <unassigned-31E4> 1123 if width('\16#031ea;') <> 1 then writeln("width(# 31ea) incorrect"); success := FALSE; end if; # <unassigned-31EA> 1124 if width('\16#031f0;') <> 1 then writeln("width(# 31f0) incorrect"); success := FALSE; end if; # KATAKANA LETTER SMALL KU 1125 if width('\16#03207;') <> 2 then writeln("width(# 3207) incorrect"); success := FALSE; end if; # PARENTHESIZED HANGUL IEUNG 1126 if width('\16#03220;') <> 1 then writeln("width(# 3220) incorrect"); success := FALSE; end if; # PARENTHESIZED IDEOGRAPH ONE 1127 if width('\16#03234;') <> 2 then writeln("width(# 3234) incorrect"); success := FALSE; end if; # PARENTHESIZED IDEOGRAPH NAME 1128 if width('\16#03248;') <> 1 then writeln("width(# 3248) incorrect"); success := FALSE; end if; # CIRCLED NUMBER TEN ON BLACK SQUARE 1129 if width('\16#0324c;') <> 1 then writeln("width(# 324c) incorrect"); success := FALSE; end if; # CIRCLED NUMBER FIFTY ON BLACK SQUARE 1130 if width('\16#03250;') <> 1 then writeln("width(# 3250) incorrect"); success := FALSE; end if; # PARTNERSHIP SIGN 1131 if width('\16#032a7;') <> 2 then writeln("width(# 32a7) incorrect"); success := FALSE; end if; # CIRCLED IDEOGRAPH LEFT 1132 if width('\16#03300;') <> 1 then writeln("width(# 3300) incorrect"); success := FALSE; end if; # SQUARE APAATO 1133 if width('\16#04060;') <> 2 then writeln("width(# 4060) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-4060 1134 if width('\16#04dc0;') <> 1 then writeln("width(# 4dc0) incorrect"); success := FALSE; end if; # HEXAGRAM FOR THE CREATIVE HEAVEN 1135 if width('\16#04de0;') <> 1 then writeln("width(# 4de0) incorrect"); success := FALSE; end if; # HEXAGRAM FOR RETREAT 1136 if width('\16#04e00;') <> 1 then writeln("width(# 4e00) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-4E00 1137 if width('\16#07946;') <> 2 then writeln("width(# 7946) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-7946 1138 if width('\16#0a490;') <> 1 then writeln("width(# a490) incorrect"); success := FALSE; end if; # YI RADICAL QOT 1139 if width('\16#0a4ab;') <> 2 then writeln("width(# a4ab) incorrect"); success := FALSE; end if; # YI RADICAL ZOT 1140 if width('\16#0a713;') <> 1 then writeln("width(# a713) incorrect"); success := FALSE; end if; # MODIFIER LETTER HIGH LEFT-STEM TONE BAR 1141 if width('\16#0a960;') <> 1 then writeln("width(# a960) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG TIKEUT-MIEUM 1142 if width('\16#0a96e;') <> 1 then writeln("width(# a96e) incorrect"); success := FALSE; end if; # HANGUL CHOSEONG RIEUL-KHIEUKH 1143 if width('\16#0aabe;') <> 1 then writeln("width(# aabe) incorrect"); success := FALSE; end if; # TAI VIET VOWEL AM 1144 if width('\16#0ac00;') <> 1 then writeln("width(# ac00) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE GA 1145 if width('\16#0c1d2;') <> 2 then writeln("width(# c1d2) incorrect"); success := FALSE; end if; # HANGUL SYLLABLE SWAELP 1146 if width('\16#0d7b0;') <> 1 then writeln("width(# d7b0) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG O-YEO 1147 if width('\16#0d7bb;') <> 1 then writeln("width(# d7bb) incorrect"); success := FALSE; end if; # HANGUL JUNGSEONG EU-E 1148 if width('\16#0d7cb;') <> 1 then writeln("width(# d7cb) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG NIEUN-RIEUL 1149 if width('\16#0d7e3;') <> 1 then writeln("width(# d7e3) incorrect"); success := FALSE; end if; # HANGUL JONGSEONG PIEUP-TIKEUT 1150 if width('\16#0d7fc;') <> 1 then writeln("width(# d7fc) incorrect"); success := FALSE; end if; # <unassigned-D7FC> 1151 if width('\16#0dbfe;') <> 1 then writeln("width(# dbfe) incorrect"); success := FALSE; end if; # <lead surrogate-DBFE> 1152 if width('\16#0e000;') <> 1 then writeln("width(# e000) incorrect"); success := FALSE; end if; # <private use area-E000> 1153 if width('\16#0ec80;') <> 1 then writeln("width(# ec80) incorrect"); success := FALSE; end if; # <private use area-EC80> 1154 if width('\16#0f900;') <> 1 then writeln("width(# f900) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-F900 1155 if width('\16#0fa00;') <> 2 then writeln("width(# fa00) incorrect"); success := FALSE; end if; # CJK COMPATIBILITY IDEOGRAPH-FA00 1156 if width('\16#0fb00;') <> 1 then writeln("width(# fb00) incorrect"); success := FALSE; end if; # LATIN SMALL LIGATURE FF 1157 if width('\16#0fc80;') <> 1 then writeln("width(# fc80) incorrect"); success := FALSE; end if; # ARABIC LIGATURE KAF WITH ALEF FINAL FORM 1158 if width('\16#0fe10;') <> 1 then writeln("width(# fe10) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL COMMA 1159 if width('\16#0fe15;') <> 1 then writeln("width(# fe15) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK 1160 if width('\16#0fe25;') <> 1 then writeln("width(# fe25) incorrect"); success := FALSE; end if; # COMBINING MACRON RIGHT HALF 1161 if width('\16#0fe30;') <> 1 then writeln("width(# fe30) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL TWO DOT LEADER 1162 if width('\16#0fe41;') <> 2 then writeln("width(# fe41) incorrect"); success := FALSE; end if; # PRESENTATION FORM FOR VERTICAL LEFT CORNER BRACKET 1163 if width('\16#0fe54;') <> 1 then writeln("width(# fe54) incorrect"); success := FALSE; end if; # SMALL SEMICOLON 1164 if width('\16#0fe5d;') <> 2 then writeln("width(# fe5d) incorrect"); success := FALSE; end if; # SMALL LEFT TORTOISE SHELL BRACKET 1165 if width('\16#0fe68;') <> 1 then writeln("width(# fe68) incorrect"); success := FALSE; end if; # SMALL REVERSE SOLIDUS 1166 if width('\16#0fe6a;') <> 2 then writeln("width(# fe6a) incorrect"); success := FALSE; end if; # SMALL PERCENT SIGN 1167 if width('\16#0feb6;') <> 1 then writeln("width(# feb6) incorrect"); success := FALSE; end if; # ARABIC LETTER SHEEN FINAL FORM 1168 if width('\16#0ff01;') <> 1 then writeln("width(# ff01) incorrect"); success := FALSE; end if; # FULLWIDTH EXCLAMATION MARK 1169 if width('\16#0ff31;') <> 2 then writeln("width(# ff31) incorrect"); success := FALSE; end if; # FULLWIDTH LATIN CAPITAL LETTER Q 1170 if width('\16#0ff61;') <> 2 then writeln("width(# ff61) incorrect"); success := FALSE; end if; # HALFWIDTH IDEOGRAPHIC FULL STOP 1171 if width('\16#0ff90;') <> 1 then writeln("width(# ff90) incorrect"); success := FALSE; end if; # HALFWIDTH KATAKANA LETTER MI 1172 if width('\16#0ffc2;') <> 1 then writeln("width(# ffc2) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER A 1173 if width('\16#0ffc5;') <> 1 then writeln("width(# ffc5) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER YAE 1174 if width('\16#0ffca;') <> 1 then writeln("width(# ffca) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER YEO 1175 if width('\16#0ffcd;') <> 1 then writeln("width(# ffcd) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER WA 1176 if width('\16#0ffd2;') <> 1 then writeln("width(# ffd2) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER YO 1177 if width('\16#0ffd5;') <> 1 then writeln("width(# ffd5) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER WE 1178 if width('\16#0ffda;') <> 1 then writeln("width(# ffda) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER EU 1179 if width('\16#0ffdb;') <> 1 then writeln("width(# ffdb) incorrect"); success := FALSE; end if; # HALFWIDTH HANGUL LETTER YI 1180 if width('\16#0ffe0;') <> 1 then writeln("width(# ffe0) incorrect"); success := FALSE; end if; # FULLWIDTH CENT SIGN 1181 if width('\16#0ffe3;') <> 2 then writeln("width(# ffe3) incorrect"); success := FALSE; end if; # FULLWIDTH MACRON 1182 if width('\16#0ffeb;') <> 1 then writeln("width(# ffeb) incorrect"); success := FALSE; end if; # HALFWIDTH RIGHTWARDS ARROW 1183 if width('\16#0fffd;') <> 1 then writeln("width(# fffd) incorrect"); success := FALSE; end if; # REPLACEMENT CHARACTER 1184 if width('\16#1b000;') <> 1 then writeln("width(#1b000) incorrect"); success := FALSE; end if; # KATAKANA LETTER ARCHAIC E 1185 if width('\16#1b001;') <> 1 then writeln("width(#1b001) incorrect"); success := FALSE; end if; # HIRAGANA LETTER ARCHAIC YE 1186 if width('\16#1b002;') <> 1 then writeln("width(#1b002) incorrect"); success := FALSE; end if; # <unassigned-1B002> 1187 if width('\16#1d081;') <> 1 then writeln("width(#1d081) incorrect"); success := FALSE; end if; # BYZANTINE MUSICAL SYMBOL KRATIMA ARCHAION 1188 if width('\16#1f100;') <> 1 then writeln("width(#1f100) incorrect"); success := FALSE; end if; # DIGIT ZERO FULL STOP 1189 if width('\16#1f105;') <> 1 then writeln("width(#1f105) incorrect"); success := FALSE; end if; # DIGIT FOUR COMMA 1190 if width('\16#1f10b;') <> 1 then writeln("width(#1f10b) incorrect"); success := FALSE; end if; # <unassigned-1F10B> 1191 if width('\16#1f10d;') <> 1 then writeln("width(#1f10d) incorrect"); success := FALSE; end if; # <unassigned-1F10D> 1192 if width('\16#1f110;') <> 1 then writeln("width(#1f110) incorrect"); success := FALSE; end if; # PARENTHESIZED LATIN CAPITAL LETTER A 1193 if width('\16#1f11f;') <> 1 then writeln("width(#1f11f) incorrect"); success := FALSE; end if; # PARENTHESIZED LATIN CAPITAL LETTER P 1194 if width('\16#1f12e;') <> 1 then writeln("width(#1f12e) incorrect"); success := FALSE; end if; # CIRCLED WZ 1195 if width('\16#1f12f;') <> 1 then writeln("width(#1f12f) incorrect"); success := FALSE; end if; # <unassigned-1F12F> 1196 if width('\16#1f130;') <> 1 then writeln("width(#1f130) incorrect"); success := FALSE; end if; # SQUARED LATIN CAPITAL LETTER A 1197 if width('\16#1f14d;') <> 1 then writeln("width(#1f14d) incorrect"); success := FALSE; end if; # SQUARED SS 1198 if width('\16#1f16a;') <> 1 then writeln("width(#1f16a) incorrect"); success := FALSE; end if; # <unassigned-1F16A> 1199 if width('\16#1f16d;') <> 1 then writeln("width(#1f16d) incorrect"); success := FALSE; end if; # <unassigned-1F16D> 1200 if width('\16#1f170;') <> 1 then writeln("width(#1f170) incorrect"); success := FALSE; end if; # NEGATIVE SQUARED LATIN CAPITAL LETTER A 1201 if width('\16#1f185;') <> 1 then writeln("width(#1f185) incorrect"); success := FALSE; end if; # NEGATIVE SQUARED LATIN CAPITAL LETTER V 1202 if width('\16#1f200;') <> 1 then writeln("width(#1f200) incorrect"); success := FALSE; end if; # SQUARE HIRAGANA HOKA 1203 if width('\16#1f201;') <> 1 then writeln("width(#1f201) incorrect"); success := FALSE; end if; # SQUARED KATAKANA KOKO 1204 if width('\16#1f210;') <> 1 then writeln("width(#1f210) incorrect"); success := FALSE; end if; # SQUARED CJK UNIFIED IDEOGRAPH-624B 1205 if width('\16#1f225;') <> 1 then writeln("width(#1f225) incorrect"); success := FALSE; end if; # SQUARED CJK UNIFIED IDEOGRAPH-54390 1206 if width('\16#1f240;') <> 1 then writeln("width(#1f240) incorrect"); success := FALSE; end if; # TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-672C 1207 if width('\16#1f244;') <> 1 then writeln("width(#1f244) incorrect"); success := FALSE; end if; # TORTOISE SHELL BRACKETED CJK UNIFIED IDEOGRAPH-70B9 1208 if width('\16#1f250;') <> 1 then writeln("width(#1f250) incorrect"); success := FALSE; end if; # CIRCLED IDEOGRAPH ADVANTAGE 1209 if width('\16#1f251;') <> 1 then writeln("width(#1f251) incorrect"); success := FALSE; end if; # CIRCLED IDEOGRAPH ACCEPT 1210 if width('\16#20000;') <> 1 then writeln("width(#20000) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-20000 1211 if width('\16#27fff;') <> 2 then writeln("width(#27fff) incorrect"); success := FALSE; end if; # CJK UNIFIED IDEOGRAPH-27FFF 1212 if success then 1213 writeln("width function works correctly."); 1214 end if; 1215 end func; 1216 1217 1218const func string: literalFunction (in char: ch) is 1219 return literal(ch); 1220 1221 1222const func string: cLiteralFunction (in char: ch) is 1223 return c_literal(ch); 1224 1225 1226const proc: check_literal_functions is func 1227 local 1228 var boolean: okay is TRUE; 1229 var boolean: ok is TRUE; 1230 var string: stri is ""; 1231 begin 1232 if literal('\0;') <> "'\\0;'" or 1233 literal('\1;') <> "'\\1;'" or 1234 literal('\2;') <> "'\\2;'" or 1235 literal('\3;') <> "'\\3;'" or 1236 literal('\4;') <> "'\\4;'" or 1237 literal('\5;') <> "'\\5;'" or 1238 literal('\6;') <> "'\\6;'" or 1239 literal('\a') <> "'\\a'" or 1240 literal('\b') <> "'\\b'" or 1241 literal('\t') <> "'\\t'" or 1242 literal('\n') <> "'\\n'" or 1243 literal('\v') <> "'\\v'" or 1244 literal('\f') <> "'\\f'" or 1245 literal('\r') <> "'\\r'" or 1246 literal('\14;') <> "'\\14;'" or 1247 literal('\15;') <> "'\\15;'" or 1248 literal('\16;') <> "'\\16;'" or 1249 literal('\17;') <> "'\\17;'" or 1250 literal('\18;') <> "'\\18;'" or 1251 literal('\19;') <> "'\\19;'" or 1252 literal('\20;') <> "'\\20;'" or 1253 literal('\21;') <> "'\\21;'" or 1254 literal('\22;') <> "'\\22;'" or 1255 literal('\23;') <> "'\\23;'" or 1256 literal('\24;') <> "'\\24;'" or 1257 literal('\25;') <> "'\\25;'" or 1258 literal('\26;') <> "'\\26;'" or 1259 literal('\e') <> "'\\e'" or 1260 literal('\28;') <> "'\\28;'" or 1261 literal('\29;') <> "'\\29;'" or 1262 literal('\30;') <> "'\\30;'" or 1263 literal('\31;') <> "'\\31;'" or 1264 literal(' ') <> "' '" or 1265 literal('"') <> "'\\\"'" or 1266 literal('\\') <> "'\\\\'" or 1267 literal('\'') <> "'\\''" or 1268 literal('~') <> "'~'" or 1269 literal('\128;') <> "'\\128;'" or 1270 literal('\128;') <> "'\\128;'" or 1271 literal('\129;') <> "'\\129;'" or 1272 literal('\130;') <> "'\\130;'" or 1273 literal('\131;') <> "'\\131;'" or 1274 literal('\132;') <> "'\\132;'" or 1275 literal('\133;') <> "'\\133;'" or 1276 literal('\134;') <> "'\\134;'" or 1277 literal('\135;') <> "'\\135;'" or 1278 literal('\136;') <> "'\\136;'" or 1279 literal('\137;') <> "'\\137;'" or 1280 literal('\138;') <> "'\\138;'" or 1281 literal('\139;') <> "'\\139;'" or 1282 literal('\140;') <> "'\\140;'" or 1283 literal('\141;') <> "'\\141;'" or 1284 literal('\142;') <> "'\\142;'" or 1285 literal('\143;') <> "'\\143;'" or 1286 literal('\144;') <> "'\\144;'" or 1287 literal('\145;') <> "'\\145;'" or 1288 literal('\146;') <> "'\\146;'" or 1289 literal('\147;') <> "'\\147;'" or 1290 literal('\148;') <> "'\\148;'" or 1291 literal('\149;') <> "'\\149;'" or 1292 literal('\150;') <> "'\\150;'" or 1293 literal('\151;') <> "'\\151;'" or 1294 literal('\152;') <> "'\\152;'" or 1295 literal('\153;') <> "'\\153;'" or 1296 literal('\154;') <> "'\\154;'" or 1297 literal('\155;') <> "'\\155;'" or 1298 literal('\156;') <> "'\\156;'" or 1299 literal('\157;') <> "'\\157;'" or 1300 literal('\158;') <> "'\\158;'" or 1301 literal('\159;') <> "'\\159;'" or 1302 literal('\160;') <> "'\\160;'" or 1303 literal('¡') <> "'¡'" or 1304 literal('¤') <> "'¤'" or 1305 literal('§') <> "'§'" or 1306 literal('¬') <> "'¬'" or 1307 literal('') <> "''" or 1308 literal('µ') <> "'µ'" or 1309 literal('¿') <> "'¿'" or 1310 literal('Ä') <> "'Ä'" or 1311 literal('×') <> "'×'" or 1312 literal('ß') <> "'ß'" or 1313 literal('ä') <> "'ä'" or 1314 literal('÷') <> "'÷'" or 1315 literal('ÿ') <> "'ÿ'" or 1316 literal('Œ') <> "'\\338;'" or 1317 literal('Š') <> "'\\352;'" or 1318 literal('ƒ') <> "'\\402;'" or 1319 literal('†') <> "'\\8224;'" or 1320 literal('•') <> "'\\8226;'" or 1321 literal('‰') <> "'\\8240;'" or 1322 literal('€') <> "'\\8364;'" or 1323 literal('™') <> "'\\8482;'" then 1324 writeln(" ***** Function literal(ch) does not work correct. (1)"); 1325 okay := FALSE; 1326 end if; 1327 1328 if literal(charExpr('\0;')) <> "'\\0;'" or 1329 literal(charExpr('\1;')) <> "'\\1;'" or 1330 literal(charExpr('\2;')) <> "'\\2;'" or 1331 literal(charExpr('\3;')) <> "'\\3;'" or 1332 literal(charExpr('\4;')) <> "'\\4;'" or 1333 literal(charExpr('\5;')) <> "'\\5;'" or 1334 literal(charExpr('\6;')) <> "'\\6;'" or 1335 literal(charExpr('\a')) <> "'\\a'" or 1336 literal(charExpr('\b')) <> "'\\b'" or 1337 literal(charExpr('\t')) <> "'\\t'" or 1338 literal(charExpr('\n')) <> "'\\n'" or 1339 literal(charExpr('\v')) <> "'\\v'" or 1340 literal(charExpr('\f')) <> "'\\f'" or 1341 literal(charExpr('\r')) <> "'\\r'" or 1342 literal(charExpr('\14;')) <> "'\\14;'" or 1343 literal(charExpr('\15;')) <> "'\\15;'" or 1344 literal(charExpr('\16;')) <> "'\\16;'" or 1345 literal(charExpr('\17;')) <> "'\\17;'" or 1346 literal(charExpr('\18;')) <> "'\\18;'" or 1347 literal(charExpr('\19;')) <> "'\\19;'" or 1348 literal(charExpr('\20;')) <> "'\\20;'" or 1349 literal(charExpr('\21;')) <> "'\\21;'" or 1350 literal(charExpr('\22;')) <> "'\\22;'" or 1351 literal(charExpr('\23;')) <> "'\\23;'" or 1352 literal(charExpr('\24;')) <> "'\\24;'" or 1353 literal(charExpr('\25;')) <> "'\\25;'" or 1354 literal(charExpr('\26;')) <> "'\\26;'" or 1355 literal(charExpr('\e')) <> "'\\e'" or 1356 literal(charExpr('\28;')) <> "'\\28;'" or 1357 literal(charExpr('\29;')) <> "'\\29;'" or 1358 literal(charExpr('\30;')) <> "'\\30;'" or 1359 literal(charExpr('\31;')) <> "'\\31;'" or 1360 literal(charExpr(' ')) <> "' '" or 1361 literal(charExpr('"')) <> "'\\\"'" or 1362 literal(charExpr('\\')) <> "'\\\\'" or 1363 literal(charExpr('\'')) <> "'\\''" or 1364 literal(charExpr('~')) <> "'~'" or 1365 literal(charExpr('\128;')) <> "'\\128;'" or 1366 literal(charExpr('\128;')) <> "'\\128;'" or 1367 literal(charExpr('\129;')) <> "'\\129;'" or 1368 literal(charExpr('\130;')) <> "'\\130;'" or 1369 literal(charExpr('\131;')) <> "'\\131;'" or 1370 literal(charExpr('\132;')) <> "'\\132;'" or 1371 literal(charExpr('\133;')) <> "'\\133;'" or 1372 literal(charExpr('\134;')) <> "'\\134;'" or 1373 literal(charExpr('\135;')) <> "'\\135;'" or 1374 literal(charExpr('\136;')) <> "'\\136;'" or 1375 literal(charExpr('\137;')) <> "'\\137;'" or 1376 literal(charExpr('\138;')) <> "'\\138;'" or 1377 literal(charExpr('\139;')) <> "'\\139;'" or 1378 literal(charExpr('\140;')) <> "'\\140;'" or 1379 literal(charExpr('\141;')) <> "'\\141;'" or 1380 literal(charExpr('\142;')) <> "'\\142;'" or 1381 literal(charExpr('\143;')) <> "'\\143;'" or 1382 literal(charExpr('\144;')) <> "'\\144;'" or 1383 literal(charExpr('\145;')) <> "'\\145;'" or 1384 literal(charExpr('\146;')) <> "'\\146;'" or 1385 literal(charExpr('\147;')) <> "'\\147;'" or 1386 literal(charExpr('\148;')) <> "'\\148;'" or 1387 literal(charExpr('\149;')) <> "'\\149;'" or 1388 literal(charExpr('\150;')) <> "'\\150;'" or 1389 literal(charExpr('\151;')) <> "'\\151;'" or 1390 literal(charExpr('\152;')) <> "'\\152;'" or 1391 literal(charExpr('\153;')) <> "'\\153;'" or 1392 literal(charExpr('\154;')) <> "'\\154;'" or 1393 literal(charExpr('\155;')) <> "'\\155;'" or 1394 literal(charExpr('\156;')) <> "'\\156;'" or 1395 literal(charExpr('\157;')) <> "'\\157;'" or 1396 literal(charExpr('\158;')) <> "'\\158;'" or 1397 literal(charExpr('\159;')) <> "'\\159;'" or 1398 literal(charExpr('\160;')) <> "'\\160;'" or 1399 literal(charExpr('¡')) <> "'¡'" or 1400 literal(charExpr('¤')) <> "'¤'" or 1401 literal(charExpr('§')) <> "'§'" or 1402 literal(charExpr('¬')) <> "'¬'" or 1403 literal(charExpr('')) <> "''" or 1404 literal(charExpr('µ')) <> "'µ'" or 1405 literal(charExpr('¿')) <> "'¿'" or 1406 literal(charExpr('Ä')) <> "'Ä'" or 1407 literal(charExpr('×')) <> "'×'" or 1408 literal(charExpr('ß')) <> "'ß'" or 1409 literal(charExpr('ä')) <> "'ä'" or 1410 literal(charExpr('÷')) <> "'÷'" or 1411 literal(charExpr('ÿ')) <> "'ÿ'" or 1412 literal(charExpr('Œ')) <> "'\\338;'" or 1413 literal(charExpr('Š')) <> "'\\352;'" or 1414 literal(charExpr('ƒ')) <> "'\\402;'" or 1415 literal(charExpr('†')) <> "'\\8224;'" or 1416 literal(charExpr('•')) <> "'\\8226;'" or 1417 literal(charExpr('‰')) <> "'\\8240;'" or 1418 literal(charExpr('€')) <> "'\\8364;'" or 1419 literal(charExpr('™')) <> "'\\8482;'" then 1420 writeln(" ***** Function literal(ch) does not work correct. (2)"); 1421 okay := FALSE; 1422 end if; 1423 1424 stri := literal('\0;'); ok := ok and stri = "'\\0;'"; 1425 stri := literal('\1;'); ok := ok and stri = "'\\1;'"; 1426 stri := literal('\2;'); ok := ok and stri = "'\\2;'"; 1427 stri := literal('\3;'); ok := ok and stri = "'\\3;'"; 1428 stri := literal('\4;'); ok := ok and stri = "'\\4;'"; 1429 stri := literal('\5;'); ok := ok and stri = "'\\5;'"; 1430 stri := literal('\6;'); ok := ok and stri = "'\\6;'"; 1431 stri := literal('\a'); ok := ok and stri = "'\\a'"; 1432 stri := literal('\b'); ok := ok and stri = "'\\b'"; 1433 stri := literal('\t'); ok := ok and stri = "'\\t'"; 1434 stri := literal('\n'); ok := ok and stri = "'\\n'"; 1435 stri := literal('\v'); ok := ok and stri = "'\\v'"; 1436 stri := literal('\f'); ok := ok and stri = "'\\f'"; 1437 stri := literal('\r'); ok := ok and stri = "'\\r'"; 1438 stri := literal('\14;'); ok := ok and stri = "'\\14;'"; 1439 stri := literal('\15;'); ok := ok and stri = "'\\15;'"; 1440 stri := literal('\16;'); ok := ok and stri = "'\\16;'"; 1441 stri := literal('\17;'); ok := ok and stri = "'\\17;'"; 1442 stri := literal('\18;'); ok := ok and stri = "'\\18;'"; 1443 stri := literal('\19;'); ok := ok and stri = "'\\19;'"; 1444 stri := literal('\20;'); ok := ok and stri = "'\\20;'"; 1445 stri := literal('\21;'); ok := ok and stri = "'\\21;'"; 1446 stri := literal('\22;'); ok := ok and stri = "'\\22;'"; 1447 stri := literal('\23;'); ok := ok and stri = "'\\23;'"; 1448 stri := literal('\24;'); ok := ok and stri = "'\\24;'"; 1449 stri := literal('\25;'); ok := ok and stri = "'\\25;'"; 1450 stri := literal('\26;'); ok := ok and stri = "'\\26;'"; 1451 stri := literal('\e'); ok := ok and stri = "'\\e'"; 1452 stri := literal('\28;'); ok := ok and stri = "'\\28;'"; 1453 stri := literal('\29;'); ok := ok and stri = "'\\29;'"; 1454 stri := literal('\30;'); ok := ok and stri = "'\\30;'"; 1455 stri := literal('\31;'); ok := ok and stri = "'\\31;'"; 1456 stri := literal(' '); ok := ok and stri = "' '"; 1457 stri := literal('"'); ok := ok and stri = "'\\\"'"; 1458 stri := literal('\\'); ok := ok and stri = "'\\\\'"; 1459 stri := literal('\''); ok := ok and stri = "'\\''"; 1460 stri := literal('~'); ok := ok and stri = "'~'"; 1461 stri := literal('\128;'); ok := ok and stri = "'\\128;'"; 1462 stri := literal('\128;'); ok := ok and stri = "'\\128;'"; 1463 stri := literal('\129;'); ok := ok and stri = "'\\129;'"; 1464 stri := literal('\130;'); ok := ok and stri = "'\\130;'"; 1465 stri := literal('\131;'); ok := ok and stri = "'\\131;'"; 1466 stri := literal('\132;'); ok := ok and stri = "'\\132;'"; 1467 stri := literal('\133;'); ok := ok and stri = "'\\133;'"; 1468 stri := literal('\134;'); ok := ok and stri = "'\\134;'"; 1469 stri := literal('\135;'); ok := ok and stri = "'\\135;'"; 1470 stri := literal('\136;'); ok := ok and stri = "'\\136;'"; 1471 stri := literal('\137;'); ok := ok and stri = "'\\137;'"; 1472 stri := literal('\138;'); ok := ok and stri = "'\\138;'"; 1473 stri := literal('\139;'); ok := ok and stri = "'\\139;'"; 1474 stri := literal('\140;'); ok := ok and stri = "'\\140;'"; 1475 stri := literal('\141;'); ok := ok and stri = "'\\141;'"; 1476 stri := literal('\142;'); ok := ok and stri = "'\\142;'"; 1477 stri := literal('\143;'); ok := ok and stri = "'\\143;'"; 1478 stri := literal('\144;'); ok := ok and stri = "'\\144;'"; 1479 stri := literal('\145;'); ok := ok and stri = "'\\145;'"; 1480 stri := literal('\146;'); ok := ok and stri = "'\\146;'"; 1481 stri := literal('\147;'); ok := ok and stri = "'\\147;'"; 1482 stri := literal('\148;'); ok := ok and stri = "'\\148;'"; 1483 stri := literal('\149;'); ok := ok and stri = "'\\149;'"; 1484 stri := literal('\150;'); ok := ok and stri = "'\\150;'"; 1485 stri := literal('\151;'); ok := ok and stri = "'\\151;'"; 1486 stri := literal('\152;'); ok := ok and stri = "'\\152;'"; 1487 stri := literal('\153;'); ok := ok and stri = "'\\153;'"; 1488 stri := literal('\154;'); ok := ok and stri = "'\\154;'"; 1489 stri := literal('\155;'); ok := ok and stri = "'\\155;'"; 1490 stri := literal('\156;'); ok := ok and stri = "'\\156;'"; 1491 stri := literal('\157;'); ok := ok and stri = "'\\157;'"; 1492 stri := literal('\158;'); ok := ok and stri = "'\\158;'"; 1493 stri := literal('\159;'); ok := ok and stri = "'\\159;'"; 1494 stri := literal('\160;'); ok := ok and stri = "'\\160;'"; 1495 stri := literal('¡'); ok := ok and stri = "'¡'"; 1496 stri := literal('¤'); ok := ok and stri = "'¤'"; 1497 stri := literal('§'); ok := ok and stri = "'§'"; 1498 stri := literal('¬'); ok := ok and stri = "'¬'"; 1499 stri := literal(''); ok := ok and stri = "''"; 1500 stri := literal('µ'); ok := ok and stri = "'µ'"; 1501 stri := literal('¿'); ok := ok and stri = "'¿'"; 1502 stri := literal('Ä'); ok := ok and stri = "'Ä'"; 1503 stri := literal('×'); ok := ok and stri = "'×'"; 1504 stri := literal('ß'); ok := ok and stri = "'ß'"; 1505 stri := literal('ä'); ok := ok and stri = "'ä'"; 1506 stri := literal('÷'); ok := ok and stri = "'÷'"; 1507 stri := literal('ÿ'); ok := ok and stri = "'ÿ'"; 1508 stri := literal('Œ'); ok := ok and stri = "'\\338;'"; 1509 stri := literal('Š'); ok := ok and stri = "'\\352;'"; 1510 stri := literal('ƒ'); ok := ok and stri = "'\\402;'"; 1511 stri := literal('†'); ok := ok and stri = "'\\8224;'"; 1512 stri := literal('•'); ok := ok and stri = "'\\8226;'"; 1513 stri := literal('‰'); ok := ok and stri = "'\\8240;'"; 1514 stri := literal('€'); ok := ok and stri = "'\\8364;'"; 1515 stri := literal('™'); ok := ok and stri = "'\\8482;'"; 1516 if not ok then 1517 writeln(" ***** Function literal(ch) does not work correct. (3)"); 1518 okay := FALSE; 1519 end if; 1520 1521 ok := TRUE; 1522 stri := literal(charExpr('\0;')); ok := ok and stri = "'\\0;'"; 1523 stri := literal(charExpr('\1;')); ok := ok and stri = "'\\1;'"; 1524 stri := literal(charExpr('\2;')); ok := ok and stri = "'\\2;'"; 1525 stri := literal(charExpr('\3;')); ok := ok and stri = "'\\3;'"; 1526 stri := literal(charExpr('\4;')); ok := ok and stri = "'\\4;'"; 1527 stri := literal(charExpr('\5;')); ok := ok and stri = "'\\5;'"; 1528 stri := literal(charExpr('\6;')); ok := ok and stri = "'\\6;'"; 1529 stri := literal(charExpr('\a')); ok := ok and stri = "'\\a'"; 1530 stri := literal(charExpr('\b')); ok := ok and stri = "'\\b'"; 1531 stri := literal(charExpr('\t')); ok := ok and stri = "'\\t'"; 1532 stri := literal(charExpr('\n')); ok := ok and stri = "'\\n'"; 1533 stri := literal(charExpr('\v')); ok := ok and stri = "'\\v'"; 1534 stri := literal(charExpr('\f')); ok := ok and stri = "'\\f'"; 1535 stri := literal(charExpr('\r')); ok := ok and stri = "'\\r'"; 1536 stri := literal(charExpr('\14;')); ok := ok and stri = "'\\14;'"; 1537 stri := literal(charExpr('\15;')); ok := ok and stri = "'\\15;'"; 1538 stri := literal(charExpr('\16;')); ok := ok and stri = "'\\16;'"; 1539 stri := literal(charExpr('\17;')); ok := ok and stri = "'\\17;'"; 1540 stri := literal(charExpr('\18;')); ok := ok and stri = "'\\18;'"; 1541 stri := literal(charExpr('\19;')); ok := ok and stri = "'\\19;'"; 1542 stri := literal(charExpr('\20;')); ok := ok and stri = "'\\20;'"; 1543 stri := literal(charExpr('\21;')); ok := ok and stri = "'\\21;'"; 1544 stri := literal(charExpr('\22;')); ok := ok and stri = "'\\22;'"; 1545 stri := literal(charExpr('\23;')); ok := ok and stri = "'\\23;'"; 1546 stri := literal(charExpr('\24;')); ok := ok and stri = "'\\24;'"; 1547 stri := literal(charExpr('\25;')); ok := ok and stri = "'\\25;'"; 1548 stri := literal(charExpr('\26;')); ok := ok and stri = "'\\26;'"; 1549 stri := literal(charExpr('\e')); ok := ok and stri = "'\\e'"; 1550 stri := literal(charExpr('\28;')); ok := ok and stri = "'\\28;'"; 1551 stri := literal(charExpr('\29;')); ok := ok and stri = "'\\29;'"; 1552 stri := literal(charExpr('\30;')); ok := ok and stri = "'\\30;'"; 1553 stri := literal(charExpr('\31;')); ok := ok and stri = "'\\31;'"; 1554 stri := literal(charExpr(' ')); ok := ok and stri = "' '"; 1555 stri := literal(charExpr('"')); ok := ok and stri = "'\\\"'"; 1556 stri := literal(charExpr('\\')); ok := ok and stri = "'\\\\'"; 1557 stri := literal(charExpr('\'')); ok := ok and stri = "'\\''"; 1558 stri := literal(charExpr('~')); ok := ok and stri = "'~'"; 1559 stri := literal(charExpr('\128;')); ok := ok and stri = "'\\128;'"; 1560 stri := literal(charExpr('\128;')); ok := ok and stri = "'\\128;'"; 1561 stri := literal(charExpr('\129;')); ok := ok and stri = "'\\129;'"; 1562 stri := literal(charExpr('\130;')); ok := ok and stri = "'\\130;'"; 1563 stri := literal(charExpr('\131;')); ok := ok and stri = "'\\131;'"; 1564 stri := literal(charExpr('\132;')); ok := ok and stri = "'\\132;'"; 1565 stri := literal(charExpr('\133;')); ok := ok and stri = "'\\133;'"; 1566 stri := literal(charExpr('\134;')); ok := ok and stri = "'\\134;'"; 1567 stri := literal(charExpr('\135;')); ok := ok and stri = "'\\135;'"; 1568 stri := literal(charExpr('\136;')); ok := ok and stri = "'\\136;'"; 1569 stri := literal(charExpr('\137;')); ok := ok and stri = "'\\137;'"; 1570 stri := literal(charExpr('\138;')); ok := ok and stri = "'\\138;'"; 1571 stri := literal(charExpr('\139;')); ok := ok and stri = "'\\139;'"; 1572 stri := literal(charExpr('\140;')); ok := ok and stri = "'\\140;'"; 1573 stri := literal(charExpr('\141;')); ok := ok and stri = "'\\141;'"; 1574 stri := literal(charExpr('\142;')); ok := ok and stri = "'\\142;'"; 1575 stri := literal(charExpr('\143;')); ok := ok and stri = "'\\143;'"; 1576 stri := literal(charExpr('\144;')); ok := ok and stri = "'\\144;'"; 1577 stri := literal(charExpr('\145;')); ok := ok and stri = "'\\145;'"; 1578 stri := literal(charExpr('\146;')); ok := ok and stri = "'\\146;'"; 1579 stri := literal(charExpr('\147;')); ok := ok and stri = "'\\147;'"; 1580 stri := literal(charExpr('\148;')); ok := ok and stri = "'\\148;'"; 1581 stri := literal(charExpr('\149;')); ok := ok and stri = "'\\149;'"; 1582 stri := literal(charExpr('\150;')); ok := ok and stri = "'\\150;'"; 1583 stri := literal(charExpr('\151;')); ok := ok and stri = "'\\151;'"; 1584 stri := literal(charExpr('\152;')); ok := ok and stri = "'\\152;'"; 1585 stri := literal(charExpr('\153;')); ok := ok and stri = "'\\153;'"; 1586 stri := literal(charExpr('\154;')); ok := ok and stri = "'\\154;'"; 1587 stri := literal(charExpr('\155;')); ok := ok and stri = "'\\155;'"; 1588 stri := literal(charExpr('\156;')); ok := ok and stri = "'\\156;'"; 1589 stri := literal(charExpr('\157;')); ok := ok and stri = "'\\157;'"; 1590 stri := literal(charExpr('\158;')); ok := ok and stri = "'\\158;'"; 1591 stri := literal(charExpr('\159;')); ok := ok and stri = "'\\159;'"; 1592 stri := literal(charExpr('\160;')); ok := ok and stri = "'\\160;'"; 1593 stri := literal(charExpr('¡')); ok := ok and stri = "'¡'"; 1594 stri := literal(charExpr('¤')); ok := ok and stri = "'¤'"; 1595 stri := literal(charExpr('§')); ok := ok and stri = "'§'"; 1596 stri := literal(charExpr('¬')); ok := ok and stri = "'¬'"; 1597 stri := literal(charExpr('')); ok := ok and stri = "''"; 1598 stri := literal(charExpr('µ')); ok := ok and stri = "'µ'"; 1599 stri := literal(charExpr('¿')); ok := ok and stri = "'¿'"; 1600 stri := literal(charExpr('Ä')); ok := ok and stri = "'Ä'"; 1601 stri := literal(charExpr('×')); ok := ok and stri = "'×'"; 1602 stri := literal(charExpr('ß')); ok := ok and stri = "'ß'"; 1603 stri := literal(charExpr('ä')); ok := ok and stri = "'ä'"; 1604 stri := literal(charExpr('÷')); ok := ok and stri = "'÷'"; 1605 stri := literal(charExpr('ÿ')); ok := ok and stri = "'ÿ'"; 1606 stri := literal(charExpr('Œ')); ok := ok and stri = "'\\338;'"; 1607 stri := literal(charExpr('Š')); ok := ok and stri = "'\\352;'"; 1608 stri := literal(charExpr('ƒ')); ok := ok and stri = "'\\402;'"; 1609 stri := literal(charExpr('†')); ok := ok and stri = "'\\8224;'"; 1610 stri := literal(charExpr('•')); ok := ok and stri = "'\\8226;'"; 1611 stri := literal(charExpr('‰')); ok := ok and stri = "'\\8240;'"; 1612 stri := literal(charExpr('€')); ok := ok and stri = "'\\8364;'"; 1613 stri := literal(charExpr('™')); ok := ok and stri = "'\\8482;'"; 1614 if not ok then 1615 writeln(" ***** Function literal(ch) does not work correct. (4)"); 1616 okay := FALSE; 1617 end if; 1618 1619 if literalFunction('\0;') <> "'\\0;'" or 1620 literalFunction('\1;') <> "'\\1;'" or 1621 literalFunction('\2;') <> "'\\2;'" or 1622 literalFunction('\3;') <> "'\\3;'" or 1623 literalFunction('\4;') <> "'\\4;'" or 1624 literalFunction('\5;') <> "'\\5;'" or 1625 literalFunction('\6;') <> "'\\6;'" or 1626 literalFunction('\a') <> "'\\a'" or 1627 literalFunction('\b') <> "'\\b'" or 1628 literalFunction('\t') <> "'\\t'" or 1629 literalFunction('\n') <> "'\\n'" or 1630 literalFunction('\v') <> "'\\v'" or 1631 literalFunction('\f') <> "'\\f'" or 1632 literalFunction('\r') <> "'\\r'" or 1633 literalFunction('\14;') <> "'\\14;'" or 1634 literalFunction('\15;') <> "'\\15;'" or 1635 literalFunction('\16;') <> "'\\16;'" or 1636 literalFunction('\17;') <> "'\\17;'" or 1637 literalFunction('\18;') <> "'\\18;'" or 1638 literalFunction('\19;') <> "'\\19;'" or 1639 literalFunction('\20;') <> "'\\20;'" or 1640 literalFunction('\21;') <> "'\\21;'" or 1641 literalFunction('\22;') <> "'\\22;'" or 1642 literalFunction('\23;') <> "'\\23;'" or 1643 literalFunction('\24;') <> "'\\24;'" or 1644 literalFunction('\25;') <> "'\\25;'" or 1645 literalFunction('\26;') <> "'\\26;'" or 1646 literalFunction('\e') <> "'\\e'" or 1647 literalFunction('\28;') <> "'\\28;'" or 1648 literalFunction('\29;') <> "'\\29;'" or 1649 literalFunction('\30;') <> "'\\30;'" or 1650 literalFunction('\31;') <> "'\\31;'" or 1651 literalFunction(' ') <> "' '" or 1652 literalFunction('"') <> "'\\\"'" or 1653 literalFunction('\\') <> "'\\\\'" or 1654 literalFunction('\'') <> "'\\''" or 1655 literalFunction('~') <> "'~'" or 1656 literalFunction('\128;') <> "'\\128;'" or 1657 literalFunction('\128;') <> "'\\128;'" or 1658 literalFunction('\129;') <> "'\\129;'" or 1659 literalFunction('\130;') <> "'\\130;'" or 1660 literalFunction('\131;') <> "'\\131;'" or 1661 literalFunction('\132;') <> "'\\132;'" or 1662 literalFunction('\133;') <> "'\\133;'" or 1663 literalFunction('\134;') <> "'\\134;'" or 1664 literalFunction('\135;') <> "'\\135;'" or 1665 literalFunction('\136;') <> "'\\136;'" or 1666 literalFunction('\137;') <> "'\\137;'" or 1667 literalFunction('\138;') <> "'\\138;'" or 1668 literalFunction('\139;') <> "'\\139;'" or 1669 literalFunction('\140;') <> "'\\140;'" or 1670 literalFunction('\141;') <> "'\\141;'" or 1671 literalFunction('\142;') <> "'\\142;'" or 1672 literalFunction('\143;') <> "'\\143;'" or 1673 literalFunction('\144;') <> "'\\144;'" or 1674 literalFunction('\145;') <> "'\\145;'" or 1675 literalFunction('\146;') <> "'\\146;'" or 1676 literalFunction('\147;') <> "'\\147;'" or 1677 literalFunction('\148;') <> "'\\148;'" or 1678 literalFunction('\149;') <> "'\\149;'" or 1679 literalFunction('\150;') <> "'\\150;'" or 1680 literalFunction('\151;') <> "'\\151;'" or 1681 literalFunction('\152;') <> "'\\152;'" or 1682 literalFunction('\153;') <> "'\\153;'" or 1683 literalFunction('\154;') <> "'\\154;'" or 1684 literalFunction('\155;') <> "'\\155;'" or 1685 literalFunction('\156;') <> "'\\156;'" or 1686 literalFunction('\157;') <> "'\\157;'" or 1687 literalFunction('\158;') <> "'\\158;'" or 1688 literalFunction('\159;') <> "'\\159;'" or 1689 literalFunction('\160;') <> "'\\160;'" or 1690 literalFunction('¡') <> "'¡'" or 1691 literalFunction('¤') <> "'¤'" or 1692 literalFunction('§') <> "'§'" or 1693 literalFunction('¬') <> "'¬'" or 1694 literalFunction('') <> "''" or 1695 literalFunction('µ') <> "'µ'" or 1696 literalFunction('¿') <> "'¿'" or 1697 literalFunction('Ä') <> "'Ä'" or 1698 literalFunction('×') <> "'×'" or 1699 literalFunction('ß') <> "'ß'" or 1700 literalFunction('ä') <> "'ä'" or 1701 literalFunction('÷') <> "'÷'" or 1702 literalFunction('ÿ') <> "'ÿ'" or 1703 literalFunction('Œ') <> "'\\338;'" or 1704 literalFunction('Š') <> "'\\352;'" or 1705 literalFunction('ƒ') <> "'\\402;'" or 1706 literalFunction('†') <> "'\\8224;'" or 1707 literalFunction('•') <> "'\\8226;'" or 1708 literalFunction('‰') <> "'\\8240;'" or 1709 literalFunction('€') <> "'\\8364;'" or 1710 literalFunction('™') <> "'\\8482;'" then 1711 writeln(" ***** Function literal(ch) via a function does not work correct. (1)"); 1712 okay := FALSE; 1713 end if; 1714 1715 if literalFunction(charExpr('\0;')) <> "'\\0;'" or 1716 literalFunction(charExpr('\1;')) <> "'\\1;'" or 1717 literalFunction(charExpr('\2;')) <> "'\\2;'" or 1718 literalFunction(charExpr('\3;')) <> "'\\3;'" or 1719 literalFunction(charExpr('\4;')) <> "'\\4;'" or 1720 literalFunction(charExpr('\5;')) <> "'\\5;'" or 1721 literalFunction(charExpr('\6;')) <> "'\\6;'" or 1722 literalFunction(charExpr('\a')) <> "'\\a'" or 1723 literalFunction(charExpr('\b')) <> "'\\b'" or 1724 literalFunction(charExpr('\t')) <> "'\\t'" or 1725 literalFunction(charExpr('\n')) <> "'\\n'" or 1726 literalFunction(charExpr('\v')) <> "'\\v'" or 1727 literalFunction(charExpr('\f')) <> "'\\f'" or 1728 literalFunction(charExpr('\r')) <> "'\\r'" or 1729 literalFunction(charExpr('\14;')) <> "'\\14;'" or 1730 literalFunction(charExpr('\15;')) <> "'\\15;'" or 1731 literalFunction(charExpr('\16;')) <> "'\\16;'" or 1732 literalFunction(charExpr('\17;')) <> "'\\17;'" or 1733 literalFunction(charExpr('\18;')) <> "'\\18;'" or 1734 literalFunction(charExpr('\19;')) <> "'\\19;'" or 1735 literalFunction(charExpr('\20;')) <> "'\\20;'" or 1736 literalFunction(charExpr('\21;')) <> "'\\21;'" or 1737 literalFunction(charExpr('\22;')) <> "'\\22;'" or 1738 literalFunction(charExpr('\23;')) <> "'\\23;'" or 1739 literalFunction(charExpr('\24;')) <> "'\\24;'" or 1740 literalFunction(charExpr('\25;')) <> "'\\25;'" or 1741 literalFunction(charExpr('\26;')) <> "'\\26;'" or 1742 literalFunction(charExpr('\e')) <> "'\\e'" or 1743 literalFunction(charExpr('\28;')) <> "'\\28;'" or 1744 literalFunction(charExpr('\29;')) <> "'\\29;'" or 1745 literalFunction(charExpr('\30;')) <> "'\\30;'" or 1746 literalFunction(charExpr('\31;')) <> "'\\31;'" or 1747 literalFunction(charExpr(' ')) <> "' '" or 1748 literalFunction(charExpr('"')) <> "'\\\"'" or 1749 literalFunction(charExpr('\\')) <> "'\\\\'" or 1750 literalFunction(charExpr('\'')) <> "'\\''" or 1751 literalFunction(charExpr('~')) <> "'~'" or 1752 literalFunction(charExpr('\128;')) <> "'\\128;'" or 1753 literalFunction(charExpr('\128;')) <> "'\\128;'" or 1754 literalFunction(charExpr('\129;')) <> "'\\129;'" or 1755 literalFunction(charExpr('\130;')) <> "'\\130;'" or 1756 literalFunction(charExpr('\131;')) <> "'\\131;'" or 1757 literalFunction(charExpr('\132;')) <> "'\\132;'" or 1758 literalFunction(charExpr('\133;')) <> "'\\133;'" or 1759 literalFunction(charExpr('\134;')) <> "'\\134;'" or 1760 literalFunction(charExpr('\135;')) <> "'\\135;'" or 1761 literalFunction(charExpr('\136;')) <> "'\\136;'" or 1762 literalFunction(charExpr('\137;')) <> "'\\137;'" or 1763 literalFunction(charExpr('\138;')) <> "'\\138;'" or 1764 literalFunction(charExpr('\139;')) <> "'\\139;'" or 1765 literalFunction(charExpr('\140;')) <> "'\\140;'" or 1766 literalFunction(charExpr('\141;')) <> "'\\141;'" or 1767 literalFunction(charExpr('\142;')) <> "'\\142;'" or 1768 literalFunction(charExpr('\143;')) <> "'\\143;'" or 1769 literalFunction(charExpr('\144;')) <> "'\\144;'" or 1770 literalFunction(charExpr('\145;')) <> "'\\145;'" or 1771 literalFunction(charExpr('\146;')) <> "'\\146;'" or 1772 literalFunction(charExpr('\147;')) <> "'\\147;'" or 1773 literalFunction(charExpr('\148;')) <> "'\\148;'" or 1774 literalFunction(charExpr('\149;')) <> "'\\149;'" or 1775 literalFunction(charExpr('\150;')) <> "'\\150;'" or 1776 literalFunction(charExpr('\151;')) <> "'\\151;'" or 1777 literalFunction(charExpr('\152;')) <> "'\\152;'" or 1778 literalFunction(charExpr('\153;')) <> "'\\153;'" or 1779 literalFunction(charExpr('\154;')) <> "'\\154;'" or 1780 literalFunction(charExpr('\155;')) <> "'\\155;'" or 1781 literalFunction(charExpr('\156;')) <> "'\\156;'" or 1782 literalFunction(charExpr('\157;')) <> "'\\157;'" or 1783 literalFunction(charExpr('\158;')) <> "'\\158;'" or 1784 literalFunction(charExpr('\159;')) <> "'\\159;'" or 1785 literalFunction(charExpr('\160;')) <> "'\\160;'" or 1786 literalFunction(charExpr('¡')) <> "'¡'" or 1787 literalFunction(charExpr('¤')) <> "'¤'" or 1788 literalFunction(charExpr('§')) <> "'§'" or 1789 literalFunction(charExpr('¬')) <> "'¬'" or 1790 literalFunction(charExpr('')) <> "''" or 1791 literalFunction(charExpr('µ')) <> "'µ'" or 1792 literalFunction(charExpr('¿')) <> "'¿'" or 1793 literalFunction(charExpr('Ä')) <> "'Ä'" or 1794 literalFunction(charExpr('×')) <> "'×'" or 1795 literalFunction(charExpr('ß')) <> "'ß'" or 1796 literalFunction(charExpr('ä')) <> "'ä'" or 1797 literalFunction(charExpr('÷')) <> "'÷'" or 1798 literalFunction(charExpr('ÿ')) <> "'ÿ'" or 1799 literalFunction(charExpr('Œ')) <> "'\\338;'" or 1800 literalFunction(charExpr('Š')) <> "'\\352;'" or 1801 literalFunction(charExpr('ƒ')) <> "'\\402;'" or 1802 literalFunction(charExpr('†')) <> "'\\8224;'" or 1803 literalFunction(charExpr('•')) <> "'\\8226;'" or 1804 literalFunction(charExpr('‰')) <> "'\\8240;'" or 1805 literalFunction(charExpr('€')) <> "'\\8364;'" or 1806 literalFunction(charExpr('™')) <> "'\\8482;'" then 1807 writeln(" ***** Function literal(ch) via a function does not work correct. (2)"); 1808 okay := FALSE; 1809 end if; 1810 1811 if c_literal('\0;') <> "'\\000'" or 1812 c_literal('\1;') <> "'\\001'" or 1813 c_literal('\2;') <> "'\\002'" or 1814 c_literal('\3;') <> "'\\003'" or 1815 c_literal('\4;') <> "'\\004'" or 1816 c_literal('\5;') <> "'\\005'" or 1817 c_literal('\6;') <> "'\\006'" or 1818 c_literal('\7;') <> "'\\007'" or 1819 c_literal('\b') <> "'\\b'" or 1820 c_literal('\t') <> "'\\t'" or 1821 c_literal('\n') <> "'\\n'" or 1822 c_literal('\11;') <> "'\\013'" or 1823 c_literal('\f') <> "'\\f'" or 1824 c_literal('\r') <> "'\\r'" or 1825 c_literal('\14;') <> "'\\016'" or 1826 c_literal('\15;') <> "'\\017'" or 1827 c_literal('\16;') <> "'\\020'" or 1828 c_literal('\17;') <> "'\\021'" or 1829 c_literal('\18;') <> "'\\022'" or 1830 c_literal('\19;') <> "'\\023'" or 1831 c_literal('\20;') <> "'\\024'" or 1832 c_literal('\21;') <> "'\\025'" or 1833 c_literal('\22;') <> "'\\026'" or 1834 c_literal('\23;') <> "'\\027'" or 1835 c_literal('\24;') <> "'\\030'" or 1836 c_literal('\25;') <> "'\\031'" or 1837 c_literal('\26;') <> "'\\032'" or 1838 c_literal('\27;') <> "'\\033'" or 1839 c_literal('\28;') <> "'\\034'" or 1840 c_literal('\29;') <> "'\\035'" or 1841 c_literal('\30;') <> "'\\036'" or 1842 c_literal('\31;') <> "'\\037'" or 1843 c_literal(' ') <> "' '" or 1844 c_literal('!') <> "'!'" or 1845 c_literal('"') <> "'\"'" or 1846 c_literal('\\') <> "'\\\\'" or 1847 c_literal('\'') <> "'\\''" or 1848 c_literal('~') <> "'~'" or 1849 c_literal('\128;') <> "128" or 1850 c_literal('\129;') <> "129" or 1851 c_literal('\130;') <> "130" or 1852 c_literal('\131;') <> "131" or 1853 c_literal('\132;') <> "132" or 1854 c_literal('\133;') <> "133" or 1855 c_literal('\134;') <> "134" or 1856 c_literal('\135;') <> "135" or 1857 c_literal('\136;') <> "136" or 1858 c_literal('\137;') <> "137" or 1859 c_literal('\138;') <> "138" or 1860 c_literal('\139;') <> "139" or 1861 c_literal('\140;') <> "140" or 1862 c_literal('\141;') <> "141" or 1863 c_literal('\142;') <> "142" or 1864 c_literal('\143;') <> "143" or 1865 c_literal('\144;') <> "144" or 1866 c_literal('\145;') <> "145" or 1867 c_literal('\146;') <> "146" or 1868 c_literal('\147;') <> "147" or 1869 c_literal('\148;') <> "148" or 1870 c_literal('\149;') <> "149" or 1871 c_literal('\150;') <> "150" or 1872 c_literal('\151;') <> "151" or 1873 c_literal('\152;') <> "152" or 1874 c_literal('\153;') <> "153" or 1875 c_literal('\154;') <> "154" or 1876 c_literal('\155;') <> "155" or 1877 c_literal('\156;') <> "156" or 1878 c_literal('\157;') <> "157" or 1879 c_literal('\158;') <> "158" or 1880 c_literal('\159;') <> "159" or 1881 c_literal('\160;') <> "160" or 1882 c_literal('¡') <> "161" or 1883 c_literal('¤') <> "164" or 1884 c_literal('§') <> "167" or 1885 c_literal('¬') <> "172" or 1886 c_literal('') <> "173" or 1887 c_literal('µ') <> "181" or 1888 c_literal('¿') <> "191" or 1889 c_literal('Ä') <> "196" or 1890 c_literal('×') <> "215" or 1891 c_literal('ß') <> "223" or 1892 c_literal('ä') <> "228" or 1893 c_literal('÷') <> "247" or 1894 c_literal('ÿ') <> "255" or 1895 c_literal('Œ') <> "338" or 1896 c_literal('Š') <> "352" or 1897 c_literal('ƒ') <> "402" or 1898 c_literal('†') <> "8224" or 1899 c_literal('•') <> "8226" or 1900 c_literal('‰') <> "8240" or 1901 c_literal('€') <> "8364" or 1902 c_literal('™') <> "8482" then 1903 writeln(" ***** Function c_literal(ch) does not work correct. (1)"); 1904 okay := FALSE; 1905 end if; 1906 1907 if c_literal(charExpr('\0;')) <> "'\\000'" or 1908 c_literal(charExpr('\1;')) <> "'\\001'" or 1909 c_literal(charExpr('\2;')) <> "'\\002'" or 1910 c_literal(charExpr('\3;')) <> "'\\003'" or 1911 c_literal(charExpr('\4;')) <> "'\\004'" or 1912 c_literal(charExpr('\5;')) <> "'\\005'" or 1913 c_literal(charExpr('\6;')) <> "'\\006'" or 1914 c_literal(charExpr('\7;')) <> "'\\007'" or 1915 c_literal(charExpr('\b')) <> "'\\b'" or 1916 c_literal(charExpr('\t')) <> "'\\t'" or 1917 c_literal(charExpr('\n')) <> "'\\n'" or 1918 c_literal(charExpr('\11;')) <> "'\\013'" or 1919 c_literal(charExpr('\f')) <> "'\\f'" or 1920 c_literal(charExpr('\r')) <> "'\\r'" or 1921 c_literal(charExpr('\14;')) <> "'\\016'" or 1922 c_literal(charExpr('\15;')) <> "'\\017'" or 1923 c_literal(charExpr('\16;')) <> "'\\020'" or 1924 c_literal(charExpr('\17;')) <> "'\\021'" or 1925 c_literal(charExpr('\18;')) <> "'\\022'" or 1926 c_literal(charExpr('\19;')) <> "'\\023'" or 1927 c_literal(charExpr('\20;')) <> "'\\024'" or 1928 c_literal(charExpr('\21;')) <> "'\\025'" or 1929 c_literal(charExpr('\22;')) <> "'\\026'" or 1930 c_literal(charExpr('\23;')) <> "'\\027'" or 1931 c_literal(charExpr('\24;')) <> "'\\030'" or 1932 c_literal(charExpr('\25;')) <> "'\\031'" or 1933 c_literal(charExpr('\26;')) <> "'\\032'" or 1934 c_literal(charExpr('\27;')) <> "'\\033'" or 1935 c_literal(charExpr('\28;')) <> "'\\034'" or 1936 c_literal(charExpr('\29;')) <> "'\\035'" or 1937 c_literal(charExpr('\30;')) <> "'\\036'" or 1938 c_literal(charExpr('\31;')) <> "'\\037'" or 1939 c_literal(charExpr(' ')) <> "' '" or 1940 c_literal(charExpr('!')) <> "'!'" or 1941 c_literal(charExpr('"')) <> "'\"'" or 1942 c_literal(charExpr('\\')) <> "'\\\\'" or 1943 c_literal(charExpr('\'')) <> "'\\''" or 1944 c_literal(charExpr('~')) <> "'~'" or 1945 c_literal(charExpr('\128;')) <> "128" or 1946 c_literal(charExpr('\129;')) <> "129" or 1947 c_literal(charExpr('\130;')) <> "130" or 1948 c_literal(charExpr('\131;')) <> "131" or 1949 c_literal(charExpr('\132;')) <> "132" or 1950 c_literal(charExpr('\133;')) <> "133" or 1951 c_literal(charExpr('\134;')) <> "134" or 1952 c_literal(charExpr('\135;')) <> "135" or 1953 c_literal(charExpr('\136;')) <> "136" or 1954 c_literal(charExpr('\137;')) <> "137" or 1955 c_literal(charExpr('\138;')) <> "138" or 1956 c_literal(charExpr('\139;')) <> "139" or 1957 c_literal(charExpr('\140;')) <> "140" or 1958 c_literal(charExpr('\141;')) <> "141" or 1959 c_literal(charExpr('\142;')) <> "142" or 1960 c_literal(charExpr('\143;')) <> "143" or 1961 c_literal(charExpr('\144;')) <> "144" or 1962 c_literal(charExpr('\145;')) <> "145" or 1963 c_literal(charExpr('\146;')) <> "146" or 1964 c_literal(charExpr('\147;')) <> "147" or 1965 c_literal(charExpr('\148;')) <> "148" or 1966 c_literal(charExpr('\149;')) <> "149" or 1967 c_literal(charExpr('\150;')) <> "150" or 1968 c_literal(charExpr('\151;')) <> "151" or 1969 c_literal(charExpr('\152;')) <> "152" or 1970 c_literal(charExpr('\153;')) <> "153" or 1971 c_literal(charExpr('\154;')) <> "154" or 1972 c_literal(charExpr('\155;')) <> "155" or 1973 c_literal(charExpr('\156;')) <> "156" or 1974 c_literal(charExpr('\157;')) <> "157" or 1975 c_literal(charExpr('\158;')) <> "158" or 1976 c_literal(charExpr('\159;')) <> "159" or 1977 c_literal(charExpr('\160;')) <> "160" or 1978 c_literal(charExpr('¡')) <> "161" or 1979 c_literal(charExpr('¤')) <> "164" or 1980 c_literal(charExpr('§')) <> "167" or 1981 c_literal(charExpr('¬')) <> "172" or 1982 c_literal(charExpr('')) <> "173" or 1983 c_literal(charExpr('µ')) <> "181" or 1984 c_literal(charExpr('¿')) <> "191" or 1985 c_literal(charExpr('Ä')) <> "196" or 1986 c_literal(charExpr('×')) <> "215" or 1987 c_literal(charExpr('ß')) <> "223" or 1988 c_literal(charExpr('ä')) <> "228" or 1989 c_literal(charExpr('÷')) <> "247" or 1990 c_literal(charExpr('ÿ')) <> "255" or 1991 c_literal(charExpr('Œ')) <> "338" or 1992 c_literal(charExpr('Š')) <> "352" or 1993 c_literal(charExpr('ƒ')) <> "402" or 1994 c_literal(charExpr('†')) <> "8224" or 1995 c_literal(charExpr('•')) <> "8226" or 1996 c_literal(charExpr('‰')) <> "8240" or 1997 c_literal(charExpr('€')) <> "8364" or 1998 c_literal(charExpr('™')) <> "8482" then 1999 writeln(" ***** Function c_literal(ch) does not work correct. (2)"); 2000 okay := FALSE; 2001 end if; 2002 2003 ok := TRUE; 2004 stri := c_literal('\0;'); ok := ok and stri = "'\\000'"; 2005 stri := c_literal('\1;'); ok := ok and stri = "'\\001'"; 2006 stri := c_literal('\2;'); ok := ok and stri = "'\\002'"; 2007 stri := c_literal('\3;'); ok := ok and stri = "'\\003'"; 2008 stri := c_literal('\4;'); ok := ok and stri = "'\\004'"; 2009 stri := c_literal('\5;'); ok := ok and stri = "'\\005'"; 2010 stri := c_literal('\6;'); ok := ok and stri = "'\\006'"; 2011 stri := c_literal('\7;'); ok := ok and stri = "'\\007'"; 2012 stri := c_literal('\b'); ok := ok and stri = "'\\b'"; 2013 stri := c_literal('\t'); ok := ok and stri = "'\\t'"; 2014 stri := c_literal('\n'); ok := ok and stri = "'\\n'"; 2015 stri := c_literal('\11;'); ok := ok and stri = "'\\013'"; 2016 stri := c_literal('\f'); ok := ok and stri = "'\\f'"; 2017 stri := c_literal('\r'); ok := ok and stri = "'\\r'"; 2018 stri := c_literal('\14;'); ok := ok and stri = "'\\016'"; 2019 stri := c_literal('\15;'); ok := ok and stri = "'\\017'"; 2020 stri := c_literal('\16;'); ok := ok and stri = "'\\020'"; 2021 stri := c_literal('\17;'); ok := ok and stri = "'\\021'"; 2022 stri := c_literal('\18;'); ok := ok and stri = "'\\022'"; 2023 stri := c_literal('\19;'); ok := ok and stri = "'\\023'"; 2024 stri := c_literal('\20;'); ok := ok and stri = "'\\024'"; 2025 stri := c_literal('\21;'); ok := ok and stri = "'\\025'"; 2026 stri := c_literal('\22;'); ok := ok and stri = "'\\026'"; 2027 stri := c_literal('\23;'); ok := ok and stri = "'\\027'"; 2028 stri := c_literal('\24;'); ok := ok and stri = "'\\030'"; 2029 stri := c_literal('\25;'); ok := ok and stri = "'\\031'"; 2030 stri := c_literal('\26;'); ok := ok and stri = "'\\032'"; 2031 stri := c_literal('\27;'); ok := ok and stri = "'\\033'"; 2032 stri := c_literal('\28;'); ok := ok and stri = "'\\034'"; 2033 stri := c_literal('\29;'); ok := ok and stri = "'\\035'"; 2034 stri := c_literal('\30;'); ok := ok and stri = "'\\036'"; 2035 stri := c_literal('\31;'); ok := ok and stri = "'\\037'"; 2036 stri := c_literal(' '); ok := ok and stri = "' '"; 2037 stri := c_literal('!'); ok := ok and stri = "'!'"; 2038 stri := c_literal('"'); ok := ok and stri = "'\"'"; 2039 stri := c_literal('\\'); ok := ok and stri = "'\\\\'"; 2040 stri := c_literal('\''); ok := ok and stri = "'\\''"; 2041 stri := c_literal('~'); ok := ok and stri = "'~'"; 2042 stri := c_literal('\128;'); ok := ok and stri = "128"; 2043 stri := c_literal('\129;'); ok := ok and stri = "129"; 2044 stri := c_literal('\130;'); ok := ok and stri = "130"; 2045 stri := c_literal('\131;'); ok := ok and stri = "131"; 2046 stri := c_literal('\132;'); ok := ok and stri = "132"; 2047 stri := c_literal('\133;'); ok := ok and stri = "133"; 2048 stri := c_literal('\134;'); ok := ok and stri = "134"; 2049 stri := c_literal('\135;'); ok := ok and stri = "135"; 2050 stri := c_literal('\136;'); ok := ok and stri = "136"; 2051 stri := c_literal('\137;'); ok := ok and stri = "137"; 2052 stri := c_literal('\138;'); ok := ok and stri = "138"; 2053 stri := c_literal('\139;'); ok := ok and stri = "139"; 2054 stri := c_literal('\140;'); ok := ok and stri = "140"; 2055 stri := c_literal('\141;'); ok := ok and stri = "141"; 2056 stri := c_literal('\142;'); ok := ok and stri = "142"; 2057 stri := c_literal('\143;'); ok := ok and stri = "143"; 2058 stri := c_literal('\144;'); ok := ok and stri = "144"; 2059 stri := c_literal('\145;'); ok := ok and stri = "145"; 2060 stri := c_literal('\146;'); ok := ok and stri = "146"; 2061 stri := c_literal('\147;'); ok := ok and stri = "147"; 2062 stri := c_literal('\148;'); ok := ok and stri = "148"; 2063 stri := c_literal('\149;'); ok := ok and stri = "149"; 2064 stri := c_literal('\150;'); ok := ok and stri = "150"; 2065 stri := c_literal('\151;'); ok := ok and stri = "151"; 2066 stri := c_literal('\152;'); ok := ok and stri = "152"; 2067 stri := c_literal('\153;'); ok := ok and stri = "153"; 2068 stri := c_literal('\154;'); ok := ok and stri = "154"; 2069 stri := c_literal('\155;'); ok := ok and stri = "155"; 2070 stri := c_literal('\156;'); ok := ok and stri = "156"; 2071 stri := c_literal('\157;'); ok := ok and stri = "157"; 2072 stri := c_literal('\158;'); ok := ok and stri = "158"; 2073 stri := c_literal('\159;'); ok := ok and stri = "159"; 2074 stri := c_literal('\160;'); ok := ok and stri = "160"; 2075 stri := c_literal('¡'); ok := ok and stri = "161"; 2076 stri := c_literal('¤'); ok := ok and stri = "164"; 2077 stri := c_literal('§'); ok := ok and stri = "167"; 2078 stri := c_literal('¬'); ok := ok and stri = "172"; 2079 stri := c_literal(''); ok := ok and stri = "173"; 2080 stri := c_literal('µ'); ok := ok and stri = "181"; 2081 stri := c_literal('¿'); ok := ok and stri = "191"; 2082 stri := c_literal('Ä'); ok := ok and stri = "196"; 2083 stri := c_literal('×'); ok := ok and stri = "215"; 2084 stri := c_literal('ß'); ok := ok and stri = "223"; 2085 stri := c_literal('ä'); ok := ok and stri = "228"; 2086 stri := c_literal('÷'); ok := ok and stri = "247"; 2087 stri := c_literal('ÿ'); ok := ok and stri = "255"; 2088 stri := c_literal('Œ'); ok := ok and stri = "338"; 2089 stri := c_literal('Š'); ok := ok and stri = "352"; 2090 stri := c_literal('ƒ'); ok := ok and stri = "402"; 2091 stri := c_literal('†'); ok := ok and stri = "8224"; 2092 stri := c_literal('•'); ok := ok and stri = "8226"; 2093 stri := c_literal('‰'); ok := ok and stri = "8240"; 2094 stri := c_literal('€'); ok := ok and stri = "8364"; 2095 stri := c_literal('™'); ok := ok and stri = "8482"; 2096 if not ok then 2097 writeln(" ***** Function c_literal(ch) does not work correct. (3)"); 2098 okay := FALSE; 2099 end if; 2100 2101 ok := TRUE; 2102 stri := c_literal(charExpr('\0;')); ok := ok and stri = "'\\000'"; 2103 stri := c_literal(charExpr('\1;')); ok := ok and stri = "'\\001'"; 2104 stri := c_literal(charExpr('\2;')); ok := ok and stri = "'\\002'"; 2105 stri := c_literal(charExpr('\3;')); ok := ok and stri = "'\\003'"; 2106 stri := c_literal(charExpr('\4;')); ok := ok and stri = "'\\004'"; 2107 stri := c_literal(charExpr('\5;')); ok := ok and stri = "'\\005'"; 2108 stri := c_literal(charExpr('\6;')); ok := ok and stri = "'\\006'"; 2109 stri := c_literal(charExpr('\7;')); ok := ok and stri = "'\\007'"; 2110 stri := c_literal(charExpr('\b')); ok := ok and stri = "'\\b'"; 2111 stri := c_literal(charExpr('\t')); ok := ok and stri = "'\\t'"; 2112 stri := c_literal(charExpr('\n')); ok := ok and stri = "'\\n'"; 2113 stri := c_literal(charExpr('\11;')); ok := ok and stri = "'\\013'"; 2114 stri := c_literal(charExpr('\f')); ok := ok and stri = "'\\f'"; 2115 stri := c_literal(charExpr('\r')); ok := ok and stri = "'\\r'"; 2116 stri := c_literal(charExpr('\14;')); ok := ok and stri = "'\\016'"; 2117 stri := c_literal(charExpr('\15;')); ok := ok and stri = "'\\017'"; 2118 stri := c_literal(charExpr('\16;')); ok := ok and stri = "'\\020'"; 2119 stri := c_literal(charExpr('\17;')); ok := ok and stri = "'\\021'"; 2120 stri := c_literal(charExpr('\18;')); ok := ok and stri = "'\\022'"; 2121 stri := c_literal(charExpr('\19;')); ok := ok and stri = "'\\023'"; 2122 stri := c_literal(charExpr('\20;')); ok := ok and stri = "'\\024'"; 2123 stri := c_literal(charExpr('\21;')); ok := ok and stri = "'\\025'"; 2124 stri := c_literal(charExpr('\22;')); ok := ok and stri = "'\\026'"; 2125 stri := c_literal(charExpr('\23;')); ok := ok and stri = "'\\027'"; 2126 stri := c_literal(charExpr('\24;')); ok := ok and stri = "'\\030'"; 2127 stri := c_literal(charExpr('\25;')); ok := ok and stri = "'\\031'"; 2128 stri := c_literal(charExpr('\26;')); ok := ok and stri = "'\\032'"; 2129 stri := c_literal(charExpr('\27;')); ok := ok and stri = "'\\033'"; 2130 stri := c_literal(charExpr('\28;')); ok := ok and stri = "'\\034'"; 2131 stri := c_literal(charExpr('\29;')); ok := ok and stri = "'\\035'"; 2132 stri := c_literal(charExpr('\30;')); ok := ok and stri = "'\\036'"; 2133 stri := c_literal(charExpr('\31;')); ok := ok and stri = "'\\037'"; 2134 stri := c_literal(charExpr(' ')); ok := ok and stri = "' '"; 2135 stri := c_literal(charExpr('!')); ok := ok and stri = "'!'"; 2136 stri := c_literal(charExpr('"')); ok := ok and stri = "'\"'"; 2137 stri := c_literal(charExpr('\\')); ok := ok and stri = "'\\\\'"; 2138 stri := c_literal(charExpr('\'')); ok := ok and stri = "'\\''"; 2139 stri := c_literal(charExpr('~')); ok := ok and stri = "'~'"; 2140 stri := c_literal(charExpr('\128;')); ok := ok and stri = "128"; 2141 stri := c_literal(charExpr('\129;')); ok := ok and stri = "129"; 2142 stri := c_literal(charExpr('\130;')); ok := ok and stri = "130"; 2143 stri := c_literal(charExpr('\131;')); ok := ok and stri = "131"; 2144 stri := c_literal(charExpr('\132;')); ok := ok and stri = "132"; 2145 stri := c_literal(charExpr('\133;')); ok := ok and stri = "133"; 2146 stri := c_literal(charExpr('\134;')); ok := ok and stri = "134"; 2147 stri := c_literal(charExpr('\135;')); ok := ok and stri = "135"; 2148 stri := c_literal(charExpr('\136;')); ok := ok and stri = "136"; 2149 stri := c_literal(charExpr('\137;')); ok := ok and stri = "137"; 2150 stri := c_literal(charExpr('\138;')); ok := ok and stri = "138"; 2151 stri := c_literal(charExpr('\139;')); ok := ok and stri = "139"; 2152 stri := c_literal(charExpr('\140;')); ok := ok and stri = "140"; 2153 stri := c_literal(charExpr('\141;')); ok := ok and stri = "141"; 2154 stri := c_literal(charExpr('\142;')); ok := ok and stri = "142"; 2155 stri := c_literal(charExpr('\143;')); ok := ok and stri = "143"; 2156 stri := c_literal(charExpr('\144;')); ok := ok and stri = "144"; 2157 stri := c_literal(charExpr('\145;')); ok := ok and stri = "145"; 2158 stri := c_literal(charExpr('\146;')); ok := ok and stri = "146"; 2159 stri := c_literal(charExpr('\147;')); ok := ok and stri = "147"; 2160 stri := c_literal(charExpr('\148;')); ok := ok and stri = "148"; 2161 stri := c_literal(charExpr('\149;')); ok := ok and stri = "149"; 2162 stri := c_literal(charExpr('\150;')); ok := ok and stri = "150"; 2163 stri := c_literal(charExpr('\151;')); ok := ok and stri = "151"; 2164 stri := c_literal(charExpr('\152;')); ok := ok and stri = "152"; 2165 stri := c_literal(charExpr('\153;')); ok := ok and stri = "153"; 2166 stri := c_literal(charExpr('\154;')); ok := ok and stri = "154"; 2167 stri := c_literal(charExpr('\155;')); ok := ok and stri = "155"; 2168 stri := c_literal(charExpr('\156;')); ok := ok and stri = "156"; 2169 stri := c_literal(charExpr('\157;')); ok := ok and stri = "157"; 2170 stri := c_literal(charExpr('\158;')); ok := ok and stri = "158"; 2171 stri := c_literal(charExpr('\159;')); ok := ok and stri = "159"; 2172 stri := c_literal(charExpr('\160;')); ok := ok and stri = "160"; 2173 stri := c_literal(charExpr('¡')); ok := ok and stri = "161"; 2174 stri := c_literal(charExpr('¤')); ok := ok and stri = "164"; 2175 stri := c_literal(charExpr('§')); ok := ok and stri = "167"; 2176 stri := c_literal(charExpr('¬')); ok := ok and stri = "172"; 2177 stri := c_literal(charExpr('')); ok := ok and stri = "173"; 2178 stri := c_literal(charExpr('µ')); ok := ok and stri = "181"; 2179 stri := c_literal(charExpr('¿')); ok := ok and stri = "191"; 2180 stri := c_literal(charExpr('Ä')); ok := ok and stri = "196"; 2181 stri := c_literal(charExpr('×')); ok := ok and stri = "215"; 2182 stri := c_literal(charExpr('ß')); ok := ok and stri = "223"; 2183 stri := c_literal(charExpr('ä')); ok := ok and stri = "228"; 2184 stri := c_literal(charExpr('÷')); ok := ok and stri = "247"; 2185 stri := c_literal(charExpr('ÿ')); ok := ok and stri = "255"; 2186 stri := c_literal(charExpr('Œ')); ok := ok and stri = "338"; 2187 stri := c_literal(charExpr('Š')); ok := ok and stri = "352"; 2188 stri := c_literal(charExpr('ƒ')); ok := ok and stri = "402"; 2189 stri := c_literal(charExpr('†')); ok := ok and stri = "8224"; 2190 stri := c_literal(charExpr('•')); ok := ok and stri = "8226"; 2191 stri := c_literal(charExpr('‰')); ok := ok and stri = "8240"; 2192 stri := c_literal(charExpr('€')); ok := ok and stri = "8364"; 2193 stri := c_literal(charExpr('™')); ok := ok and stri = "8482"; 2194 if not ok then 2195 writeln(" ***** Function c_literal(ch) does not work correct. (4)"); 2196 okay := FALSE; 2197 end if; 2198 2199 if cLiteralFunction('\0;') <> "'\\000'" or 2200 cLiteralFunction('\1;') <> "'\\001'" or 2201 cLiteralFunction('\2;') <> "'\\002'" or 2202 cLiteralFunction('\3;') <> "'\\003'" or 2203 cLiteralFunction('\4;') <> "'\\004'" or 2204 cLiteralFunction('\5;') <> "'\\005'" or 2205 cLiteralFunction('\6;') <> "'\\006'" or 2206 cLiteralFunction('\7;') <> "'\\007'" or 2207 cLiteralFunction('\b') <> "'\\b'" or 2208 cLiteralFunction('\t') <> "'\\t'" or 2209 cLiteralFunction('\n') <> "'\\n'" or 2210 cLiteralFunction('\11;') <> "'\\013'" or 2211 cLiteralFunction('\f') <> "'\\f'" or 2212 cLiteralFunction('\r') <> "'\\r'" or 2213 cLiteralFunction('\14;') <> "'\\016'" or 2214 cLiteralFunction('\15;') <> "'\\017'" or 2215 cLiteralFunction('\16;') <> "'\\020'" or 2216 cLiteralFunction('\17;') <> "'\\021'" or 2217 cLiteralFunction('\18;') <> "'\\022'" or 2218 cLiteralFunction('\19;') <> "'\\023'" or 2219 cLiteralFunction('\20;') <> "'\\024'" or 2220 cLiteralFunction('\21;') <> "'\\025'" or 2221 cLiteralFunction('\22;') <> "'\\026'" or 2222 cLiteralFunction('\23;') <> "'\\027'" or 2223 cLiteralFunction('\24;') <> "'\\030'" or 2224 cLiteralFunction('\25;') <> "'\\031'" or 2225 cLiteralFunction('\26;') <> "'\\032'" or 2226 cLiteralFunction('\27;') <> "'\\033'" or 2227 cLiteralFunction('\28;') <> "'\\034'" or 2228 cLiteralFunction('\29;') <> "'\\035'" or 2229 cLiteralFunction('\30;') <> "'\\036'" or 2230 cLiteralFunction('\31;') <> "'\\037'" or 2231 cLiteralFunction(' ') <> "' '" or 2232 cLiteralFunction('!') <> "'!'" or 2233 cLiteralFunction('"') <> "'\"'" or 2234 cLiteralFunction('\\') <> "'\\\\'" or 2235 cLiteralFunction('\'') <> "'\\''" or 2236 cLiteralFunction('~') <> "'~'" or 2237 cLiteralFunction('\128;') <> "128" or 2238 cLiteralFunction('\129;') <> "129" or 2239 cLiteralFunction('\130;') <> "130" or 2240 cLiteralFunction('\131;') <> "131" or 2241 cLiteralFunction('\132;') <> "132" or 2242 cLiteralFunction('\133;') <> "133" or 2243 cLiteralFunction('\134;') <> "134" or 2244 cLiteralFunction('\135;') <> "135" or 2245 cLiteralFunction('\136;') <> "136" or 2246 cLiteralFunction('\137;') <> "137" or 2247 cLiteralFunction('\138;') <> "138" or 2248 cLiteralFunction('\139;') <> "139" or 2249 cLiteralFunction('\140;') <> "140" or 2250 cLiteralFunction('\141;') <> "141" or 2251 cLiteralFunction('\142;') <> "142" or 2252 cLiteralFunction('\143;') <> "143" or 2253 cLiteralFunction('\144;') <> "144" or 2254 cLiteralFunction('\145;') <> "145" or 2255 cLiteralFunction('\146;') <> "146" or 2256 cLiteralFunction('\147;') <> "147" or 2257 cLiteralFunction('\148;') <> "148" or 2258 cLiteralFunction('\149;') <> "149" or 2259 cLiteralFunction('\150;') <> "150" or 2260 cLiteralFunction('\151;') <> "151" or 2261 cLiteralFunction('\152;') <> "152" or 2262 cLiteralFunction('\153;') <> "153" or 2263 cLiteralFunction('\154;') <> "154" or 2264 cLiteralFunction('\155;') <> "155" or 2265 cLiteralFunction('\156;') <> "156" or 2266 cLiteralFunction('\157;') <> "157" or 2267 cLiteralFunction('\158;') <> "158" or 2268 cLiteralFunction('\159;') <> "159" or 2269 cLiteralFunction('\160;') <> "160" or 2270 cLiteralFunction('¡') <> "161" or 2271 cLiteralFunction('¤') <> "164" or 2272 cLiteralFunction('§') <> "167" or 2273 cLiteralFunction('¬') <> "172" or 2274 cLiteralFunction('') <> "173" or 2275 cLiteralFunction('µ') <> "181" or 2276 cLiteralFunction('¿') <> "191" or 2277 cLiteralFunction('Ä') <> "196" or 2278 cLiteralFunction('×') <> "215" or 2279 cLiteralFunction('ß') <> "223" or 2280 cLiteralFunction('ä') <> "228" or 2281 cLiteralFunction('÷') <> "247" or 2282 cLiteralFunction('ÿ') <> "255" or 2283 cLiteralFunction('Œ') <> "338" or 2284 cLiteralFunction('Š') <> "352" or 2285 cLiteralFunction('ƒ') <> "402" or 2286 cLiteralFunction('†') <> "8224" or 2287 cLiteralFunction('•') <> "8226" or 2288 cLiteralFunction('‰') <> "8240" or 2289 cLiteralFunction('€') <> "8364" or 2290 cLiteralFunction('™') <> "8482" then 2291 writeln(" ***** Function c_literal(ch) via a function does not work correct. (1)"); 2292 okay := FALSE; 2293 end if; 2294 2295 if cLiteralFunction(charExpr('\0;')) <> "'\\000'" or 2296 cLiteralFunction(charExpr('\1;')) <> "'\\001'" or 2297 cLiteralFunction(charExpr('\2;')) <> "'\\002'" or 2298 cLiteralFunction(charExpr('\3;')) <> "'\\003'" or 2299 cLiteralFunction(charExpr('\4;')) <> "'\\004'" or 2300 cLiteralFunction(charExpr('\5;')) <> "'\\005'" or 2301 cLiteralFunction(charExpr('\6;')) <> "'\\006'" or 2302 cLiteralFunction(charExpr('\7;')) <> "'\\007'" or 2303 cLiteralFunction(charExpr('\b')) <> "'\\b'" or 2304 cLiteralFunction(charExpr('\t')) <> "'\\t'" or 2305 cLiteralFunction(charExpr('\n')) <> "'\\n'" or 2306 cLiteralFunction(charExpr('\11;')) <> "'\\013'" or 2307 cLiteralFunction(charExpr('\f')) <> "'\\f'" or 2308 cLiteralFunction(charExpr('\r')) <> "'\\r'" or 2309 cLiteralFunction(charExpr('\14;')) <> "'\\016'" or 2310 cLiteralFunction(charExpr('\15;')) <> "'\\017'" or 2311 cLiteralFunction(charExpr('\16;')) <> "'\\020'" or 2312 cLiteralFunction(charExpr('\17;')) <> "'\\021'" or 2313 cLiteralFunction(charExpr('\18;')) <> "'\\022'" or 2314 cLiteralFunction(charExpr('\19;')) <> "'\\023'" or 2315 cLiteralFunction(charExpr('\20;')) <> "'\\024'" or 2316 cLiteralFunction(charExpr('\21;')) <> "'\\025'" or 2317 cLiteralFunction(charExpr('\22;')) <> "'\\026'" or 2318 cLiteralFunction(charExpr('\23;')) <> "'\\027'" or 2319 cLiteralFunction(charExpr('\24;')) <> "'\\030'" or 2320 cLiteralFunction(charExpr('\25;')) <> "'\\031'" or 2321 cLiteralFunction(charExpr('\26;')) <> "'\\032'" or 2322 cLiteralFunction(charExpr('\27;')) <> "'\\033'" or 2323 cLiteralFunction(charExpr('\28;')) <> "'\\034'" or 2324 cLiteralFunction(charExpr('\29;')) <> "'\\035'" or 2325 cLiteralFunction(charExpr('\30;')) <> "'\\036'" or 2326 cLiteralFunction(charExpr('\31;')) <> "'\\037'" or 2327 cLiteralFunction(charExpr(' ')) <> "' '" or 2328 cLiteralFunction(charExpr('!')) <> "'!'" or 2329 cLiteralFunction(charExpr('"')) <> "'\"'" or 2330 cLiteralFunction(charExpr('\\')) <> "'\\\\'" or 2331 cLiteralFunction(charExpr('\'')) <> "'\\''" or 2332 cLiteralFunction(charExpr('~')) <> "'~'" or 2333 cLiteralFunction(charExpr('\128;')) <> "128" or 2334 cLiteralFunction(charExpr('\129;')) <> "129" or 2335 cLiteralFunction(charExpr('\130;')) <> "130" or 2336 cLiteralFunction(charExpr('\131;')) <> "131" or 2337 cLiteralFunction(charExpr('\132;')) <> "132" or 2338 cLiteralFunction(charExpr('\133;')) <> "133" or 2339 cLiteralFunction(charExpr('\134;')) <> "134" or 2340 cLiteralFunction(charExpr('\135;')) <> "135" or 2341 cLiteralFunction(charExpr('\136;')) <> "136" or 2342 cLiteralFunction(charExpr('\137;')) <> "137" or 2343 cLiteralFunction(charExpr('\138;')) <> "138" or 2344 cLiteralFunction(charExpr('\139;')) <> "139" or 2345 cLiteralFunction(charExpr('\140;')) <> "140" or 2346 cLiteralFunction(charExpr('\141;')) <> "141" or 2347 cLiteralFunction(charExpr('\142;')) <> "142" or 2348 cLiteralFunction(charExpr('\143;')) <> "143" or 2349 cLiteralFunction(charExpr('\144;')) <> "144" or 2350 cLiteralFunction(charExpr('\145;')) <> "145" or 2351 cLiteralFunction(charExpr('\146;')) <> "146" or 2352 cLiteralFunction(charExpr('\147;')) <> "147" or 2353 cLiteralFunction(charExpr('\148;')) <> "148" or 2354 cLiteralFunction(charExpr('\149;')) <> "149" or 2355 cLiteralFunction(charExpr('\150;')) <> "150" or 2356 cLiteralFunction(charExpr('\151;')) <> "151" or 2357 cLiteralFunction(charExpr('\152;')) <> "152" or 2358 cLiteralFunction(charExpr('\153;')) <> "153" or 2359 cLiteralFunction(charExpr('\154;')) <> "154" or 2360 cLiteralFunction(charExpr('\155;')) <> "155" or 2361 cLiteralFunction(charExpr('\156;')) <> "156" or 2362 cLiteralFunction(charExpr('\157;')) <> "157" or 2363 cLiteralFunction(charExpr('\158;')) <> "158" or 2364 cLiteralFunction(charExpr('\159;')) <> "159" or 2365 cLiteralFunction(charExpr('\160;')) <> "160" or 2366 cLiteralFunction(charExpr('¡')) <> "161" or 2367 cLiteralFunction(charExpr('¤')) <> "164" or 2368 cLiteralFunction(charExpr('§')) <> "167" or 2369 cLiteralFunction(charExpr('¬')) <> "172" or 2370 cLiteralFunction(charExpr('')) <> "173" or 2371 cLiteralFunction(charExpr('µ')) <> "181" or 2372 cLiteralFunction(charExpr('¿')) <> "191" or 2373 cLiteralFunction(charExpr('Ä')) <> "196" or 2374 cLiteralFunction(charExpr('×')) <> "215" or 2375 cLiteralFunction(charExpr('ß')) <> "223" or 2376 cLiteralFunction(charExpr('ä')) <> "228" or 2377 cLiteralFunction(charExpr('÷')) <> "247" or 2378 cLiteralFunction(charExpr('ÿ')) <> "255" or 2379 cLiteralFunction(charExpr('Œ')) <> "338" or 2380 cLiteralFunction(charExpr('Š')) <> "352" or 2381 cLiteralFunction(charExpr('ƒ')) <> "402" or 2382 cLiteralFunction(charExpr('†')) <> "8224" or 2383 cLiteralFunction(charExpr('•')) <> "8226" or 2384 cLiteralFunction(charExpr('‰')) <> "8240" or 2385 cLiteralFunction(charExpr('€')) <> "8364" or 2386 cLiteralFunction(charExpr('™')) <> "8482" then 2387 writeln(" ***** Function c_literal(ch) via a function does not work correct. (2)"); 2388 okay := FALSE; 2389 end if; 2390 2391 if okay then 2392 writeln("Char literal functions work correct."); 2393 end if; 2394 end func; 2395 2396 2397const proc: check_ternary is func 2398 local 2399 var boolean: okay is TRUE; 2400 var boolean: ok is TRUE; 2401 var char: ch is ' '; 2402 begin 2403 if ( TRUE ? 'a' : 'b') <> 'a' or 2404 (FALSE ? 'a' : 'b') <> 'b' or 2405 ( TRUE ? 'a' : charExpr('b')) <> 'a' or 2406 (FALSE ? 'a' : charExpr('b')) <> 'b' or 2407 ( TRUE ? charExpr('a') : 'b') <> 'a' or 2408 (FALSE ? charExpr('a') : 'b') <> 'b' or 2409 ( TRUE ? charExpr('a') : charExpr('b')) <> 'a' or 2410 (FALSE ? charExpr('a') : charExpr('b')) <> 'b' or 2411 (boolExpr( TRUE) ? 'a' : 'b') <> 'a' or 2412 (boolExpr(FALSE) ? 'a' : 'b') <> 'b' or 2413 (boolExpr( TRUE) ? 'a' : charExpr('b')) <> 'a' or 2414 (boolExpr(FALSE) ? 'a' : charExpr('b')) <> 'b' or 2415 (boolExpr( TRUE) ? charExpr('a') : 'b') <> 'a' or 2416 (boolExpr(FALSE) ? charExpr('a') : 'b') <> 'b' or 2417 (boolExpr( TRUE) ? charExpr('a') : charExpr('b')) <> 'a' or 2418 (boolExpr(FALSE) ? charExpr('a') : charExpr('b')) <> 'b' then 2419 writeln(" ***** The ternary operator ? : does not work correct. (1)"); 2420 okay := FALSE; 2421 end if; 2422 2423 ch := TRUE ? 'a' : 'b'; ok := ok and ch = 'a'; 2424 ch := FALSE ? 'a' : 'b'; ok := ok and ch = 'b'; 2425 ch := TRUE ? 'a' : charExpr('b'); ok := ok and ch = 'a'; 2426 ch := FALSE ? 'a' : charExpr('b'); ok := ok and ch = 'b'; 2427 ch := TRUE ? charExpr('a') : 'b'; ok := ok and ch = 'a'; 2428 ch := FALSE ? charExpr('a') : 'b'; ok := ok and ch = 'b'; 2429 ch := TRUE ? charExpr('a') : charExpr('b'); ok := ok and ch = 'a'; 2430 ch := FALSE ? charExpr('a') : charExpr('b'); ok := ok and ch = 'b'; 2431 ch := boolExpr( TRUE) ? 'a' : 'b'; ok := ok and ch = 'a'; 2432 ch := boolExpr(FALSE) ? 'a' : 'b'; ok := ok and ch = 'b'; 2433 ch := boolExpr( TRUE) ? 'a' : charExpr('b'); ok := ok and ch = 'a'; 2434 ch := boolExpr(FALSE) ? 'a' : charExpr('b'); ok := ok and ch = 'b'; 2435 ch := boolExpr( TRUE) ? charExpr('a') : 'b'; ok := ok and ch = 'a'; 2436 ch := boolExpr(FALSE) ? charExpr('a') : 'b'; ok := ok and ch = 'b'; 2437 ch := boolExpr( TRUE) ? charExpr('a') : charExpr('b'); ok := ok and ch = 'a'; 2438 ch := boolExpr(FALSE) ? charExpr('a') : charExpr('b'); ok := ok and ch = 'b'; 2439 if not ok then 2440 writeln(" ***** The ternary operator ? : does not work correct. (2)"); 2441 okay := FALSE; 2442 end if; 2443 2444 if okay then 2445 writeln("The ternary operator ? : works correct for char."); 2446 else 2447 writeln(" ***** The ternary operator ? : does not work correct."); 2448 end if; 2449 end func; 2450 2451 2452const proc: main is func 2453 2454 begin 2455 writeln; 2456 check_isLetter(); 2457 check_width(); 2458 check_literal_functions(); 2459 check_ternary(); 2460 end func; 2461