summaryrefslogtreecommitdiff
blob: 3885ef2e32e018ed0d3b4e9bb80740196d8f978f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
--- a/idl/idlparser.cc
+++ b/idl/idlparser.cc
@@ -395,7 +395,7 @@
   node = node->getBranch (1);
 
   assert (node);
-  assert (node->getType() == string_literals ||
+  assert (node->getType() == ::string_literals ||
 	  node->getType() == scoped_name);
 
   CORBA::String_var to_be_imported = CORBA::string_dup (node->getIdent ());
@@ -427,7 +427,7 @@
 
   CORBA::Contained_var icont = CORBA::Contained::_nil ();
 
-  if (node->getType() == string_literals) {
+  if (node->getType() == ::string_literals) {
     if (CORBA::is_nil (myrepo)) {
       cerr << IDLError (36, node, to_be_imported.in()) << endl;
       exit (1);
@@ -1823,7 +1823,7 @@
 IDLParser::collectContextExpr( ParseNode *node, CORBA::ContextIdSeq &ctx )
 {
   while( node != NULL ) {
-    assert( node->getType() == string_literals );
+    assert( node->getType() == ::string_literals );
     int i = ctx.length();
     ctx.length( i + 1 );
     ctx[ i ] = (const char *) node->getIdent();
--- a/idl/yacc.cc
+++ b/idl/yacc.cc
@@ -3639,7 +3639,7 @@
   case 251:
 #line 1792 "yacc.yy"
     {
-	    yyval.node = new ParseNode( string_literals );
+	    yyval.node = new ParseNode( ::string_literals );
 	    yyval.node->setIdent( yyvsp[0]._str );
 	  }
     break;
@@ -3647,7 +3647,7 @@
   case 252:
 #line 1797 "yacc.yy"
     {
-	    yyval.node = new ParseNode( string_literals, yyvsp[0].node );
+	    yyval.node = new ParseNode( ::string_literals, yyvsp[0].node );
 	    yyval.node->setIdent( yyvsp[-2]._str );
 	  }
     break;
@@ -3774,7 +3774,7 @@
   case 267:
 #line 1919 "yacc.yy"
     {
-	    yyval.node = new ParseNode (string_literals);
+	    yyval.node = new ParseNode (::string_literals);
 	    yyval.node->setIdent (yyvsp[0]._str);
 	  }
     break;
--- a/orb/uni_fromuni.cc
+++ b/orb/uni_fromuni.cc
@@ -51,18 +51,18 @@
 
 static const char uni2ebcArray[] =  /* beginning with 0x20 (32) */
 {
-  0x40, 0x5A, 0x7E, 0x7B, 0x5B, 0x6C, 0x50, 0x7D,  /* 0x20-0x27 ( 32- 39) */
-  0x4D, 0x5D, 0x5C, 0x4E, 0x6B, 0x6D, 0x4B, 0x61,  /* 0x28-0x2F ( 40- 47) */
-  0xF0, 0xF1, 0xF2, 0xF3, 0xF4, 0xF5, 0xF6, 0xF7,  /* 0x30-0x37 ( 48- 55) */
-  0xF8, 0xF9, 0x7A, 0x5E, 0x4C, 0x7E, 0x6E, 0x6F,  /* 0x38-0x3F ( 56- 63) */
-  0x7C, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7,  /* 0x40-0x47 ( 64- 71) */
-  0xC8, 0xC9, 0xD1, 0xD2, 0xD3, 0xD4, 0xD5, 0xD6,  /* 0x48-0x4F ( 72- 79) */
-  0xD7, 0xD8, 0xD9, 0xE2, 0xE3, 0xE4, 0xE5, 0xE6,  /* 0x50-0x57 ( 80- 87) */
-  0xE7, 0xE8, 0xE9, '\0', '\0', '\0', '\0', 0x6D,  /* 0x58-0x5F ( 88- 95) */
-  '\0', 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87,  /* 0x60-0x67 ( 96-103) */
-  0x88, 0x89, 0x91, 0x92, 0x93, 0x94, 0x95, 0x96,  /* 0x68-0x6F (104-111) */
-  0x97, 0x98, 0x99, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6,  /* 0x70-0x77 (112-119) */
-  0xA7, 0xA8, 0xA9, 0x8B, 0x6A, 0x9B, '\0', '\0'   /* 0x78-0x7F (120-127) */
+  (char)0x40, (char)0x5A, (char)0x7E, (char)0x7B, (char)0x5B, (char)0x6C, (char)0x50, (char)0x7D,  /* 0x20-0x27 ( 32- 39) */
+  (char)0x4D, (char)0x5D, (char)0x5C, (char)0x4E, (char)0x6B, (char)0x6D, (char)0x4B, (char)0x61,  /* 0x28-0x2F ( 40- 47) */
+  (char)0xF0, (char)0xF1, (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5, (char)0xF6, (char)0xF7,  /* 0x30-0x37 ( 48- 55) */
+  (char)0xF8, (char)0xF9, (char)0x7A, (char)0x5E, (char)0x4C, (char)0x7E, (char)0x6E, (char)0x6F,  /* 0x38-0x3F ( 56- 63) */
+  (char)0x7C, (char)0xC1, (char)0xC2, (char)0xC3, (char)0xC4, (char)0xC5, (char)0xC6, (char)0xC7,  /* 0x40-0x47 ( 64- 71) */
+  (char)0xC8, (char)0xC9, (char)0xD1, (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5, (char)0xD6,  /* 0x48-0x4F ( 72- 79) */
+  (char)0xD7, (char)0xD8, (char)0xD9, (char)0xE2, (char)0xE3, (char)0xE4, (char)0xE5, (char)0xE6,  /* 0x50-0x57 ( 80- 87) */
+  (char)0xE7, (char)0xE8, (char)0xE9, (char)'\0', (char)'\0', (char)'\0', (char)'\0', (char)0x6D,  /* 0x58-0x5F ( 88- 95) */
+  (char)'\0', (char)0x81, (char)0x82, (char)0x83, (char)0x84, (char)0x85, (char)0x86, (char)0x87,  /* 0x60-0x67 ( 96-103) */
+  (char)0x88, (char)0x89, (char)0x91, (char)0x92, (char)0x93, (char)0x94, (char)0x95, (char)0x96,  /* 0x68-0x6F (104-111) */
+  (char)0x97, (char)0x98, (char)0x99, (char)0xA2, (char)0xA3, (char)0xA4, (char)0xA5, (char)0xA6,  /* 0x70-0x77 (112-119) */
+  (char)0xA7, (char)0xA8, (char)0xA9, (char)0x8B, (char)0x6A, (char)0x9B, (char)'\0', (char)'\0'   /* 0x78-0x7F (120-127) */
 };
 
 //  static const cexcept exc2ebcArray[] =
@@ -113,434 +113,434 @@
 
 static const char uni2macArray[] =  /* beginning with 0xA0 (160) */
 {
-  0xCA, 0xC1, 0xA2, 0xA3,  /* 0xA0-0xA3 (160-163) */
-  0xDB, 0xB4, '\0', 0xA4,  /* 0xA4-0xA7 (164-167) */
-  0xAC, 0xA9, 0xAB, 0xC7,  /* 0xA8-0xAB (168-171) */
-  0xC2, 0xD0, 0xA8, '\0',  /* 0xAC-0xAF (172-175) */
-
-  0xA1, 0xB1, '\0', '\0',  /* 0xB0-0xB3 (176-179) */
-  0xAB, 0xB5, 0xA6, 0xE1,  /* 0xB4-0xB7 (180-183) */
-  '\0', 0xF5, 0xAC, 0xC8,  /* 0xB8-0xBB (184-187) */
-  '\0', '\0', '\0', 0xC0,  /* 0xBC-0xBF (188-191) */
-
-  0xCB, 0xE7, 0xE5, 0xCC,  /* 0xC0-0xC3 (192-195) */
-  0x80, 0x81, 0xA6, 0x82,  /* 0xC4-0xC7 (196-199) */
-  0xE9, 0x83, 0xE6, 0xE8,  /* 0xC8-0xCB (200-203) */
-  0xCD, 0xCA, 0xCB, 0xCC,  /* 0xCC-0xCF (204-207) */
-
-  '\0', 0x84, 0xF1, 0xCE,  /* 0xD0-0xD3 (208-211) */
-  0xCF, 0xCD, 0x85, '\0',  /* 0xD4-0xD7 (212-215) */
-  0xAF, 0xF5, 0xF3, 0xF4,  /* 0xD8-0xDB (216-219) */
-  0x86, '\0', '\0', 0xA7,  /* 0xDC-0xDF (220-223) */
-
-  0x88, 0x87, 0x89, 0x8B,  /* 0xE0-0xE3 (224-227) */
-  0x8A, 0x8C, 0xBE, 0x8D,  /* 0xE4-0xE7 (228-231) */
-  0x8F, 0x8E, 0x90, 0x91,  /* 0xE8-0xEB (232-235) */
-  0x93, 0x92, 0x94, 0x95,  /* 0xEC-0xEF (236-239) */
-
-  '\0', 0x96, 0x98, 0x97,  /* 0xF0-0xF3 (240-243) */
-  0x99, 0x9B, 0x9A, 0xD6,  /* 0xF4-0xF7 (244-247) */
-  0xBF, 0x9D, 0x9C, 0x9E,  /* 0xF8-0xFB (248-251) */
-  0x9F, '\0', '\0', 0xD8   /* 0xFC-0xFF (252-255) */
+  (char)0xCA, (char)0xC1, (char)0xA2, (char)0xA3,  /* 0xA0-0xA3 (160-163) */
+  (char)0xDB, (char)0xB4, (char)'\0', (char)0xA4,  /* 0xA4-0xA7 (164-167) */
+  (char)0xAC, (char)0xA9, (char)0xAB, (char)0xC7,  /* 0xA8-0xAB (168-171) */
+  (char)0xC2, (char)0xD0, (char)0xA8, (char)'\0',  /* 0xAC-0xAF (172-175) */
+
+  (char)0xA1, (char)0xB1, (char)'\0', (char)'\0',  /* 0xB0-0xB3 (176-179) */
+  (char)0xAB, (char)0xB5, (char)0xA6, (char)0xE1,  /* 0xB4-0xB7 (180-183) */
+  (char)'\0', (char)0xF5, (char)0xAC, (char)0xC8,  /* 0xB8-0xBB (184-187) */
+  (char)'\0', (char)'\0', (char)'\0', (char)0xC0,  /* 0xBC-0xBF (188-191) */
+
+  (char)0xCB, (char)0xE7, (char)0xE5, (char)0xCC,  /* 0xC0-0xC3 (192-195) */
+  (char)0x80, (char)0x81, (char)0xA6, (char)0x82,  /* 0xC4-0xC7 (196-199) */
+  (char)0xE9, (char)0x83, (char)0xE6, (char)0xE8,  /* 0xC8-0xCB (200-203) */
+  (char)0xCD, (char)0xCA, (char)0xCB, (char)0xCC,  /* 0xCC-0xCF (204-207) */
+
+  (char)'\0', (char)0x84, (char)0xF1, (char)0xCE,  /* 0xD0-0xD3 (208-211) */
+  (char)0xCF, (char)0xCD, (char)0x85, (char)'\0',  /* 0xD4-0xD7 (212-215) */
+  (char)0xAF, (char)0xF5, (char)0xF3, (char)0xF4,  /* 0xD8-0xDB (216-219) */
+  (char)0x86, (char)'\0', (char)'\0', (char)0xA7,  /* 0xDC-0xDF (220-223) */
+
+  (char)0x88, (char)0x87, (char)0x89, (char)0x8B,  /* 0xE0-0xE3 (224-227) */
+  (char)0x8A, (char)0x8C, (char)0xBE, (char)0x8D,  /* 0xE4-0xE7 (228-231) */
+  (char)0x8F, (char)0x8E, (char)0x90, (char)0x91,  /* 0xE8-0xEB (232-235) */
+  (char)0x93, (char)0x92, (char)0x94, (char)0x95,  /* 0xEC-0xEF (236-239) */
+
+  (char)'\0', (char)0x96, (char)0x98, (char)0x97,  /* 0xF0-0xF3 (240-243) */
+  (char)0x99, (char)0x9B, (char)0x9A, (char)0xD6,  /* 0xF4-0xF7 (244-247) */
+  (char)0xBF, (char)0x9D, (char)0x9C, (char)0x9E,  /* 0xF8-0xFB (248-251) */
+  (char)0x9F, (char)'\0', (char)'\0', (char)0xD8   /* 0xFC-0xFF (252-255) */
 };
 
 static const cexcept exc2macArray[] =
 {
-  { 0x0152 , 0xCE } , { 0x0153 , 0xCF } , { 0x0178 , 0xD9 } ,
-  { 0x0192 , 0xC4 } , { 0x02C6 , 0xF6 } , { 0x02C7 , 0xF9 } ,
-  { 0x02C9 , 0xF8 } , { 0x02CE , 0xFE } , { 0x02D8 , 0xFF } ,
-  { 0x02D9 , 0xFA } , { 0x02DA , 0xFB } , { 0x02DB , 0xFC } ,
-  { 0x02DC , 0xF7 } , { 0x03A9 , 0xBD } , { 0x03C0 , 0xB9 } ,
-  { 0x2013 , 0xD0 } , { 0x2014 , 0xD1 } , { 0x2018 , 0xD4 } ,
-  { 0x2019 , 0xD5 } , { 0x201A , 0xE2 } , { 0x201C , 0xD2 } ,
-  { 0x201D , 0xD3 } , { 0x201E , 0xE3 } , { 0x2020 , 0xA0 } ,
-  { 0x2021 , 0xE0 } , { 0x2026 , 0xC9 } , { 0x2031 , 0xE4 } ,
-  { 0x2039 , 0xDC } , { 0x20A0 , 0xDD } , { 0x2122 , 0xAA } ,
-  { 0x2190 , 0x1C } , { 0x2191 , 0x1E } , { 0x2192 , 0x1D } ,
-  { 0x2193 , 0x1F } , { 0x2202 , 0xB6 } , { 0x2205 , 0xD7 } ,
-  { 0x2206 , 0xC6 } , { 0x220E , 0xA5 } , { 0x220F , 0xB8 } ,
-  { 0x2211 , 0xB7 } , { 0x2215 , 0xDA } , { 0x221A , 0xC3 } ,
-  { 0x221E , 0xB0 } , { 0x222B , 0xBA } , { 0x2248 , 0xC5 } ,
-  { 0x2260 , 0xAD } , { 0x2264 , 0xB2 } , { 0x2265 , 0xB3 } ,
-  { 0xFB01 , 0xDE } , { 0xFB02 , 0xDF }
+  { (uni_ushort)0x0152 , (char)0xCE } , { (uni_ushort)0x0153 , (char)0xCF } , { (uni_ushort)0x0178 , (char)0xD9 } ,
+  { (uni_ushort)0x0192 , (char)0xC4 } , { (uni_ushort)0x02C6 , (char)0xF6 } , { (uni_ushort)0x02C7 , (char)0xF9 } ,
+  { (uni_ushort)0x02C9 , (char)0xF8 } , { (uni_ushort)0x02CE , (char)0xFE } , { (uni_ushort)0x02D8 , (char)0xFF } ,
+  { (uni_ushort)0x02D9 , (char)0xFA } , { (uni_ushort)0x02DA , (char)0xFB } , { (uni_ushort)0x02DB , (char)0xFC } ,
+  { (uni_ushort)0x02DC , (char)0xF7 } , { (uni_ushort)0x03A9 , (char)0xBD } , { (uni_ushort)0x03C0 , (char)0xB9 } ,
+  { (uni_ushort)0x2013 , (char)0xD0 } , { (uni_ushort)0x2014 , (char)0xD1 } , { (uni_ushort)0x2018 , (char)0xD4 } ,
+  { (uni_ushort)0x2019 , (char)0xD5 } , { (uni_ushort)0x201A , (char)0xE2 } , { (uni_ushort)0x201C , (char)0xD2 } ,
+  { (uni_ushort)0x201D , (char)0xD3 } , { (uni_ushort)0x201E , (char)0xE3 } , { (uni_ushort)0x2020 , (char)0xA0 } ,
+  { (uni_ushort)0x2021 , (char)0xE0 } , { (uni_ushort)0x2026 , (char)0xC9 } , { (uni_ushort)0x2031 , (char)0xE4 } ,
+  { (uni_ushort)0x2039 , (char)0xDC } , { (uni_ushort)0x20A0 , (char)0xDD } , { (uni_ushort)0x2122 , (char)0xAA } ,
+  { (uni_ushort)0x2190 , (char)0x1C } , { (uni_ushort)0x2191 , (char)0x1E } , { (uni_ushort)0x2192 , (char)0x1D } ,
+  { (uni_ushort)0x2193 , (char)0x1F } , { (uni_ushort)0x2202 , (char)0xB6 } , { (uni_ushort)0x2205 , (char)0xD7 } ,
+  { (uni_ushort)0x2206 , (char)0xC6 } , { (uni_ushort)0x220E , (char)0xA5 } , { (uni_ushort)0x220F , (char)0xB8 } ,
+  { (uni_ushort)0x2211 , (char)0xB7 } , { (uni_ushort)0x2215 , (char)0xDA } , { (uni_ushort)0x221A , (char)0xC3 } ,
+  { (uni_ushort)0x221E , (char)0xB0 } , { (uni_ushort)0x222B , (char)0xBA } , { (uni_ushort)0x2248 , (char)0xC5 } ,
+  { (uni_ushort)0x2260 , (char)0xAD } , { (uni_ushort)0x2264 , (char)0xB2 } , { (uni_ushort)0x2265 , (char)0xB3 } ,
+  { (uni_ushort)0xFB01 , (char)0xDE } , { (uni_ushort)0xFB02 , (char)0xDF }
 };
 
 static const char uni2koiArray1[] =  /* beginning with 0x0410 (1040) */
 {
-  0xE1, 0xE2, 0xF7, 0xE7,  /* 0x0410-0x0413 (1040-1043) */
-  0xE4, 0xE5, 0xF6, 0xFA,  /* 0x0414-0x0417 (1044-1047) */
-  0xE9, 0xEA, 0xEB, 0xEC,  /* 0x0418-0x041B (1048-1051) */
-  0xED, 0xEE, 0xEF, 0xF0,  /* 0x041C-0x041F (1042-1055) */
-
-  0xF2, 0xF3, 0xF4, 0xF5,  /* 0x0420-0x0423 (1056-1059) */
-  0xE6, 0xE8, 0xE3, 0xFE,  /* 0x0424-0x0427 (1060-1063) */
-  0xFB, 0xFD, 0xFF, 0xF9,  /* 0x0428-0x042B (1064-1067) */
-  0xF8, 0xFC, 0xE0, 0xF1,  /* 0x042C-0x042F (1068-1071) */
-
-  0xC1, 0xC2, 0xD7, 0xC7,  /* 0x0430-0x0433 (1072-1075) */
-  0xC4, 0xC5, 0xD6, 0xDA,  /* 0x0434-0x0437 (1076-1079) */
-  0xC9, 0xCA, 0xCB, 0xCC,  /* 0x0438-0x043B (1080-1083) */
-  0xCD, 0xCE, 0xCF, 0xD0,  /* 0x043C-0x043F (1084-1087) */
-
-  0xD2, 0xD3, 0xD4, 0xD5,  /* 0x0440-0x0443 (1088-1091) */
-  0xC6, 0xC8, 0xC3, 0xDE,  /* 0x0444-0x0447 (1092-1095) */
-  0xDB, 0xDD, 0xDF, 0xD9,  /* 0x0448-0x044B (1096-1099) */
-  0xD8, 0xDC, 0xC0, 0xD1   /* 0x044C-0x044F (1100-1103) */
+  (char)0xE1, (char)0xE2, (char)0xF7, (char)0xE7,  /* 0x0410-0x0413 (1040-1043) */
+  (char)0xE4, (char)0xE5, (char)0xF6, (char)0xFA,  /* 0x0414-0x0417 (1044-1047) */
+  (char)0xE9, (char)0xEA, (char)0xEB, (char)0xEC,  /* 0x0418-0x041B (1048-1051) */
+  (char)0xED, (char)0xEE, (char)0xEF, (char)0xF0,  /* 0x041C-0x041F (1042-1055) */
+
+  (char)0xF2, (char)0xF3, (char)0xF4, (char)0xF5,  /* 0x0420-0x0423 (1056-1059) */
+  (char)0xE6, (char)0xE8, (char)0xE3, (char)0xFE,  /* 0x0424-0x0427 (1060-1063) */
+  (char)0xFB, (char)0xFD, (char)0xFF, (char)0xF9,  /* 0x0428-0x042B (1064-1067) */
+  (char)0xF8, (char)0xFC, (char)0xE0, (char)0xF1,  /* 0x042C-0x042F (1068-1071) */
+
+  (char)0xC1, (char)0xC2, (char)0xD7, (char)0xC7,  /* 0x0430-0x0433 (1072-1075) */
+  (char)0xC4, (char)0xC5, (char)0xD6, (char)0xDA,  /* 0x0434-0x0437 (1076-1079) */
+  (char)0xC9, (char)0xCA, (char)0xCB, (char)0xCC,  /* 0x0438-0x043B (1080-1083) */
+  (char)0xCD, (char)0xCE, (char)0xCF, (char)0xD0,  /* 0x043C-0x043F (1084-1087) */
+
+  (char)0xD2, (char)0xD3, (char)0xD4, (char)0xD5,  /* 0x0440-0x0443 (1088-1091) */
+  (char)0xC6, (char)0xC8, (char)0xC3, (char)0xDE,  /* 0x0444-0x0447 (1092-1095) */
+  (char)0xDB, (char)0xDD, (char)0xDF, (char)0xD9,  /* 0x0448-0x044B (1096-1099) */
+  (char)0xD8, (char)0xDC, (char)0xC0, (char)0xD1   /* 0x044C-0x044F (1100-1103) */
 };
 
 static const char uni2koiArray2[] =  /* beginning with 0x2550 (9552) */
 {
-  0xA0, 0xA1, 0xA2, 0xA4,  /* 0x0250-0x0253 (9552-9555) */
-  0xA5, 0xA6, 0xA7, 0xA8,  /* 0x0254-0x0257 (9556-9559) */
-  0xA9, 0xAA, 0xAB, 0xAC,  /* 0x0258-0x025B (9560-9563) */
-  0xAD, 0xAE, 0xAF, 0xB0,  /* 0x025C-0x025F (9564-9567) */
-
-  0xB1, 0xB2, 0xB4, 0xB5,  /* 0x0260-0x0263 (9568-9571) */
-  0xB6, 0xB7, 0xB8, 0xB9,  /* 0x0264-0x0267 (9572-9575) */
-  0xBA, 0xBB, 0xBC, 0xBD,  /* 0x0268-0x026B (9576-9579) */
-  0xBE                     /* 0x026C        (9578     ) */
+  (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA4,  /* 0x0250-0x0253 (9552-9555) */
+  (char)0xA5, (char)0xA6, (char)0xA7, (char)0xA8,  /* 0x0254-0x0257 (9556-9559) */
+  (char)0xA9, (char)0xAA, (char)0xAB, (char)0xAC,  /* 0x0258-0x025B (9560-9563) */
+  (char)0xAD, (char)0xAE, (char)0xAF, (char)0xB0,  /* 0x025C-0x025F (9564-9567) */
+
+  (char)0xB1, (char)0xB2, (char)0xB4, (char)0xB5,  /* 0x0260-0x0263 (9568-9571) */
+  (char)0xB6, (char)0xB7, (char)0xB8, (char)0xB9,  /* 0x0264-0x0267 (9572-9575) */
+  (char)0xBA, (char)0xBB, (char)0xBC, (char)0xBD,  /* 0x0268-0x026B (9576-9579) */
+  (char)0xBE                                       /* 0x026C        (9578     ) */
 };
 
 static const cexcept exc2koiArray[] =
 {
-  { 0xA0   , 0x9A } , { 0xA9   , 0xBF } , { 0xB0   , 0x9C } , 
-  { 0xB2   , 0x9D } , { 0xB7   , 0x9E } , { 0xF7   , 0x9F } , 
-  { 0x0401 , 0xB3 } , { 0x0451 , 0xA3 } , { 0x220E , 0x94 } , 
-  { 0x2219 , 0x95 } , { 0x221A , 0x96 } , { 0x2248 , 0x97 } , 
-  { 0x2264 , 0x98 } , { 0x2265 , 0x99 } , { 0x2320 , 0x93 } , 
-  { 0x2321 , 0x9B } , { 0x2500 , 0x80 } , { 0x2502 , 0x81 } , 
-  { 0x250C , 0x82 } , { 0x2510 , 0x83 } , { 0x2514 , 0x84 } , 
-  { 0x2518 , 0x85 } , { 0x251C , 0x86 } , { 0x2524 , 0x87 } , 
-  { 0x252C , 0x88 } , { 0x2534 , 0x89 } , { 0x253C , 0x8A } , 
-  { 0x2580 , 0x8B } , { 0x2584 , 0x8C } , { 0x2588 , 0x8D } , 
-  { 0x258C , 0x8E } , { 0x2590 , 0x8F } , { 0x2591 , 0x90 } , 
-  { 0x2592 , 0x91 } , { 0x2593 , 0x92 }
+  { 0xA0   , (char)0x9A } , { 0xA9   , (char)0xBF } , { 0xB0   , (char)0x9C } , 
+  { 0xB2   , (char)0x9D } , { 0xB7   , (char)0x9E } , { 0xF7   , (char)0x9F } , 
+  { 0x0401 , (char)0xB3 } , { 0x0451 , (char)0xA3 } , { 0x220E , (char)0x94 } , 
+  { 0x2219 , (char)0x95 } , { 0x221A , (char)0x96 } , { 0x2248 , (char)0x97 } , 
+  { 0x2264 , (char)0x98 } , { 0x2265 , (char)0x99 } , { 0x2320 , (char)0x93 } , 
+  { 0x2321 , (char)0x9B } , { 0x2500 , (char)0x80 } , { 0x2502 , (char)0x81 } , 
+  { 0x250C , (char)0x82 } , { 0x2510 , (char)0x83 } , { 0x2514 , (char)0x84 } , 
+  { 0x2518 , (char)0x85 } , { 0x251C , (char)0x86 } , { 0x2524 , (char)0x87 } , 
+  { 0x252C , (char)0x88 } , { 0x2534 , (char)0x89 } , { 0x253C , (char)0x8A } , 
+  { 0x2580 , (char)0x8B } , { 0x2584 , (char)0x8C } , { 0x2588 , (char)0x8D } , 
+  { 0x258C , (char)0x8E } , { 0x2590 , (char)0x8F } , { 0x2591 , (char)0x90 } , 
+  { 0x2592 , (char)0x91 } , { 0x2593 , (char)0x92 }
 };
 
 static const char uni2ibm866Array1[] =  /* beginning with 0x0410 (1040) */
 {
-  0x80, 0x81, 0x82, 0x83,  /* 0x0410-0x0413 (1040-1043) */
-  0x84, 0x85, 0x86, 0x87,  /* 0x0414-0x0417 (1044-1047) */
-  0x88, 0x89, 0x8A, 0x8B,  /* 0x0418-0x041B (1048-1051) */
-  0x8C, 0x8D, 0x8E, 0x8F,  /* 0x041C-0x041F (1042-1055) */
-
-  0x90, 0x91, 0x92, 0x93,  /* 0x0420-0x0423 (1056-1059) */
-  0x94, 0x95, 0x96, 0x97,  /* 0x0424-0x0427 (1060-1063) */
-  0x98, 0x99, 0x9A, 0x9B,  /* 0x0428-0x042B (1064-1067) */
-  0x9C, 0x9D, 0x9E, 0x9F,  /* 0x042C-0x042F (1068-1071) */
-
-  0xA0, 0xA1, 0xA2, 0xA3,  /* 0x0430-0x0433 (1072-1075) */
-  0xA4, 0xA5, 0xA6, 0xA7,  /* 0x0434-0x0437 (1076-1079) */
-  0xA8, 0xA9, 0xAA, 0xAB,  /* 0x0438-0x043B (1080-1083) */
-  0xAC, 0xAD, 0xAE, 0xAF,  /* 0x043C-0x043F (1084-1087) */
-
-  0xE0, 0xE1, 0xE2, 0xE3,  /* 0x0440-0x0443 (1088-1091) */
-  0xE4, 0xE5, 0xE6, 0xE7,  /* 0x0444-0x0447 (1092-1095) */
-  0xE8, 0xE9, 0xEA, 0xEB,  /* 0x0448-0x044B (1096-1099) */
-  0xEC, 0xED, 0xEE, 0xEF,  /* 0x044C-0x044F (1100-1103) */
+  (char)0x80, (char)0x81, (char)0x82, (char)0x83,  /* 0x0410-0x0413 (1040-1043) */
+  (char)0x84, (char)0x85, (char)0x86, (char)0x87,  /* 0x0414-0x0417 (1044-1047) */
+  (char)0x88, (char)0x89, (char)0x8A, (char)0x8B,  /* 0x0418-0x041B (1048-1051) */
+  (char)0x8C, (char)0x8D, (char)0x8E, (char)0x8F,  /* 0x041C-0x041F (1042-1055) */
+
+  (char)0x90, (char)0x91, (char)0x92, (char)0x93,  /* 0x0420-0x0423 (1056-1059) */
+  (char)0x94, (char)0x95, (char)0x96, (char)0x97,  /* 0x0424-0x0427 (1060-1063) */
+  (char)0x98, (char)0x99, (char)0x9A, (char)0x9B,  /* 0x0428-0x042B (1064-1067) */
+  (char)0x9C, (char)0x9D, (char)0x9E, (char)0x9F,  /* 0x042C-0x042F (1068-1071) */
+
+  (char)0xA0, (char)0xA1, (char)0xA2, (char)0xA3,  /* 0x0430-0x0433 (1072-1075) */
+  (char)0xA4, (char)0xA5, (char)0xA6, (char)0xA7,  /* 0x0434-0x0437 (1076-1079) */
+  (char)0xA8, (char)0xA9, (char)0xAA, (char)0xAB,  /* 0x0438-0x043B (1080-1083) */
+  (char)0xAC, (char)0xAD, (char)0xAE, (char)0xAF,  /* 0x043C-0x043F (1084-1087) */
+
+  (char)0xE0, (char)0xE1, (char)0xE2, (char)0xE3,  /* 0x0440-0x0443 (1088-1091) */
+  (char)0xE4, (char)0xE5, (char)0xE6, (char)0xE7,  /* 0x0444-0x0447 (1092-1095) */
+  (char)0xE8, (char)0xE9, (char)0xEA, (char)0xEB,  /* 0x0448-0x044B (1096-1099) */
+  (char)0xEC, (char)0xED, (char)0xEE, (char)0xEF,  /* 0x044C-0x044F (1100-1103) */
 };
 
 static const char uni2ibm866Array2[] =  /* beginning with 0x2550 (9552) */
 {
-  0xCD, 0xBA, 0xD5, 0xD6,  /* 0x2550-0x2553 (9552-9555) */
-  0xC9, 0xB8, 0xB7, 0xBB,  /* 0x2554-0x2557 (9556-9559) */
-  0xD4, 0xD3, 0xC8, 0xBE,  /* 0x2558-0x255B (9560-9563) */
-  0xBD, 0xBC, 0xC6, 0xC7,  /* 0x255C-0x255F (9564-9567) */
-
-  0xCC, 0xB5, 0xB6, 0xB9,  /* 0x2560-0x2563 (9568-9571) */
-  0xD1, 0xD2, 0xCB, 0xCF,  /* 0x2564-0x2567 (9572-9575) */
-  0xD0, 0xCA, 0xD8, 0xD7,  /* 0x2568-0x256B (9576-9579) */
-  0xCE,                    /* 0x256C        (9578     ) */
+  (char)0xCD, (char)0xBA, (char)0xD5, (char)0xD6,  /* 0x2550-0x2553 (9552-9555) */
+  (char)0xC9, (char)0xB8, (char)0xB7, (char)0xBB,  /* 0x2554-0x2557 (9556-9559) */
+  (char)0xD4, (char)0xD3, (char)0xC8, (char)0xBE,  /* 0x2558-0x255B (9560-9563) */
+  (char)0xBD, (char)0xBC, (char)0xC6, (char)0xC7,  /* 0x255C-0x255F (9564-9567) */
+
+  (char)0xCC, (char)0xB5, (char)0xB6, (char)0xB9,  /* 0x2560-0x2563 (9568-9571) */
+  (char)0xD1, (char)0xD2, (char)0xCB, (char)0xCF,  /* 0x2564-0x2567 (9572-9575) */
+  (char)0xD0, (char)0xCA, (char)0xD8, (char)0xD7,  /* 0x2568-0x256B (9576-9579) */
+  (char)0xCE,                                      /* 0x256C        (9578     ) */
 };
 
 static const cexcept exc2ibm866Array[] =
 {
-{ 0xA0   , 0xFF } , { 0xA4   , 0xFD } , { 0xB0   , 0xF8 } ,
-{ 0xB7   , 0xFA } , { 0x0401 , 0xF0 } , { 0x0404 , 0xF2 } ,
-{ 0x0407 , 0xF4 } , { 0x040E , 0xF6 } , { 0x0451 , 0xF1 } ,
-{ 0x0454 , 0xF3 } , { 0x0457 , 0xF5 } , { 0x045E , 0xF7 } ,
-{ 0x2116 , 0xFC } , { 0x2219 , 0xF9 } , { 0x221A , 0xFB } ,
-{ 0x2500 , 0xC4 } , { 0x2502 , 0xB3 } , { 0x250C , 0xDA } ,
-{ 0x2510 , 0xBF } , { 0x2514 , 0xC0 } , { 0x2518 , 0xD9 } ,
-{ 0x251C , 0xC3 } , { 0x2524 , 0xB4 } , { 0x252C , 0xC2 } ,
-{ 0x2534 , 0xC1 } , { 0x253C , 0xC5 } , { 0x2580 , 0xDF } ,
-{ 0x2584 , 0xDC } , { 0x2588 , 0xDB } , { 0x258C , 0xDD } ,
-{ 0x2590 , 0xDE } , { 0x2591 , 0xB0 } , { 0x2592 , 0xB1 } ,
-{ 0x2593 , 0xB2 } , { 0x25A0 , 0xFE } ,
+{ 0xA0   , (char)0xFF } , { 0xA4   , (char)0xFD } , { 0xB0   , (char)0xF8 } ,
+{ 0xB7   , (char)0xFA } , { 0x0401 , (char)0xF0 } , { 0x0404 , (char)0xF2 } ,
+{ 0x0407 , (char)0xF4 } , { 0x040E , (char)0xF6 } , { 0x0451 , (char)0xF1 } ,
+{ 0x0454 , (char)0xF3 } , { 0x0457 , (char)0xF5 } , { 0x045E , (char)0xF7 } ,
+{ 0x2116 , (char)0xFC } , { 0x2219 , (char)0xF9 } , { 0x221A , (char)0xFB } ,
+{ 0x2500 , (char)0xC4 } , { 0x2502 , (char)0xB3 } , { 0x250C , (char)0xDA } ,
+{ 0x2510 , (char)0xBF } , { 0x2514 , (char)0xC0 } , { 0x2518 , (char)0xD9 } ,
+{ 0x251C , (char)0xC3 } , { 0x2524 , (char)0xB4 } , { 0x252C , (char)0xC2 } ,
+{ 0x2534 , (char)0xC1 } , { 0x253C , (char)0xC5 } , { 0x2580 , (char)0xDF } ,
+{ 0x2584 , (char)0xDC } , { 0x2588 , (char)0xDB } , { 0x258C , (char)0xDD } ,
+{ 0x2590 , (char)0xDE } , { 0x2591 , (char)0xB0 } , { 0x2592 , (char)0xB1 } ,
+{ 0x2593 , (char)0xB2 } , { 0x25A0 , (char)0xFE } ,
 };
 
 static const char uni2isoArray[] =  /* beginning with 0x0100 (256) */
 {
-  0xC0, 0xE0, 0xC3, 0xE3,  /* 0x0100-0x0103 (256-259) */
-  0xA1, 0xB1, 0xC6, 0xE6,  /* 0x0104-0x0107 (260-263) */
-  0xC6, 0xE6, 0xC5, 0xE5,  /* 0x0108-0x010B (264-267) */
-  0xC8, 0xE8, 0xCF, 0xEF,  /* 0x010C-0x010F (268-271) */
-
-  0xD0, 0xF0, 0xAA, 0xBA,  /* 0x0110-0x0113 (272-275) */
-  '\0', '\0', 0xCC, 0xEC,  /* 0x0114-0x0117 (276-279) */
-  0xCA, 0xEA, 0xCC, 0xEC,  /* 0x0118-0x011B (280-283) */
-  0xD8, 0xF8, 0xAB, 0xBB,  /* 0x011C-0x011F (284-287) */
-
-  0xD5, 0xF5, 0xAB, 0xBB,  /* 0x0120-0x0123 (288-291) */
-  0xA6, 0xB6, 0xA1, 0xB1,  /* 0x0124-0x0127 (292-295) */
-  0xA5, 0xB5, 0xCF, 0xEF,  /* 0x0128-0x012B (296-299) */
-  '\0', '\0', 0xC7, 0xE7,  /* 0x012C-0x012F (300-302) */
-
-  0xA9, 0xB9, '\0', '\0',  /* 0x0130-0x0133 (304-307) */
-  0xAC, 0xBC, 0xD3, 0xF3,  /* 0x0134-0x0137 (308-311) */
-  0xA2, 0xC5, 0xE5, 0xA6,  /* 0x0138-0x013B (312-315) */
-  0xB6, 0xA5, 0xB5, '\0',  /* 0x013C-0x013F (316-319) */
-
-  '\0', 0xA3, 0xB3, 0xD1,  /* 0x0140-0x0143 (320-323) */
-  0xF1, 0xD1, 0xF1, 0xD2,  /* 0x0144-0x0147 (324-327) */
-  0xF2, '\0', 0xBD, 0xBF,  /* 0x0148-0x014B (328-331) */
-  0xD2, 0xF2, '\0', '\0',  /* 0x014C-0x014F (332-335) */
-
-  0xD5, 0xF5, '\0', '\0',  /* 0x0150-0x0153 (336-339) */
-  0xC0, 0xE0, 0xA3, 0xB3,  /* 0x0154-0x0157 (340-343) */
-  0xD8, 0xF8, 0xA6, 0xB6,  /* 0x0158-0x015B (344-347) */
-  0xDE, 0xFE, 0xAA, 0xBA,  /* 0x015C-0x015F (348-351) */
-
-  0xA9, 0xB9, 0xDE, 0xFE,  /* 0x0160-0x0163 (352-355) */
-  0xAB, 0xBB, 0xFC, 0xAD,  /* 0x0164-0x0167 (356-359) */
-  0xDD, 0xFD, 0xDE, 0xFE,  /* 0x0168-0x016B (360-363) */
-  0xDD, 0xFD, 0xD9, 0xF9,  /* 0x016C-0x016F (364-367) */
-
-  0xDB, 0xFB, 0xD9, 0xF9,  /* 0x0170-0x0173 (368-371) */
-  '\0', '\0', '\0', '\0',  /* 0x0174-0x0177 (372-375) */
-  '\0', 0xAC, 0xBC, 0xAF,  /* 0x0178-0x017B (376-379) */
-  0xBF, 0xAE, 0xBE, '\0'   /* 0x017C-0x017F (380-383) */
+  (char)0xC0, (char)0xE0, (char)0xC3, (char)0xE3,  /* 0x0100-0x0103 (256-259) */
+  (char)0xA1, (char)0xB1, (char)0xC6, (char)0xE6,  /* 0x0104-0x0107 (260-263) */
+  (char)0xC6, (char)0xE6, (char)0xC5, (char)0xE5,  /* 0x0108-0x010B (264-267) */
+  (char)0xC8, (char)0xE8, (char)0xCF, (char)0xEF,  /* 0x010C-0x010F (268-271) */
+
+  (char)0xD0, (char)0xF0, (char)0xAA, (char)0xBA,  /* 0x0110-0x0113 (272-275) */
+  (char)'\0', (char)'\0', (char)0xCC, (char)0xEC,  /* 0x0114-0x0117 (276-279) */
+  (char)0xCA, (char)0xEA, (char)0xCC, (char)0xEC,  /* 0x0118-0x011B (280-283) */
+  (char)0xD8, (char)0xF8, (char)0xAB, (char)0xBB,  /* 0x011C-0x011F (284-287) */
+
+  (char)0xD5, (char)0xF5, (char)0xAB, (char)0xBB,  /* 0x0120-0x0123 (288-291) */
+  (char)0xA6, (char)0xB6, (char)0xA1, (char)0xB1,  /* 0x0124-0x0127 (292-295) */
+  (char)0xA5, (char)0xB5, (char)0xCF, (char)0xEF,  /* 0x0128-0x012B (296-299) */
+  (char)'\0', (char)'\0', (char)0xC7, (char)0xE7,  /* 0x012C-0x012F (300-302) */
+
+  (char)0xA9, (char)0xB9, (char)'\0', (char)'\0',  /* 0x0130-0x0133 (304-307) */
+  (char)0xAC, (char)0xBC, (char)0xD3, (char)0xF3,  /* 0x0134-0x0137 (308-311) */
+  (char)0xA2, (char)0xC5, (char)0xE5, (char)0xA6,  /* 0x0138-0x013B (312-315) */
+  (char)0xB6, (char)0xA5, (char)0xB5, (char)'\0',  /* 0x013C-0x013F (316-319) */
+
+  (char)'\0', (char)0xA3, (char)0xB3, (char)0xD1,  /* 0x0140-0x0143 (320-323) */
+  (char)0xF1, (char)0xD1, (char)0xF1, (char)0xD2,  /* 0x0144-0x0147 (324-327) */
+  (char)0xF2, (char)'\0', (char)0xBD, (char)0xBF,  /* 0x0148-0x014B (328-331) */
+  (char)0xD2, (char)0xF2, (char)'\0', (char)'\0',  /* 0x014C-0x014F (332-335) */
+
+  (char)0xD5, (char)0xF5, (char)'\0', (char)'\0',  /* 0x0150-0x0153 (336-339) */
+  (char)0xC0, (char)0xE0, (char)0xA3, (char)0xB3,  /* 0x0154-0x0157 (340-343) */
+  (char)0xD8, (char)0xF8, (char)0xA6, (char)0xB6,  /* 0x0158-0x015B (344-347) */
+  (char)0xDE, (char)0xFE, (char)0xAA, (char)0xBA,  /* 0x015C-0x015F (348-351) */
+
+  (char)0xA9, (char)0xB9, (char)0xDE, (char)0xFE,  /* 0x0160-0x0163 (352-355) */
+  (char)0xAB, (char)0xBB, (char)0xFC, (char)0xAD,  /* 0x0164-0x0167 (356-359) */
+  (char)0xDD, (char)0xFD, (char)0xDE, (char)0xFE,  /* 0x0168-0x016B (360-363) */
+  (char)0xDD, (char)0xFD, (char)0xD9, (char)0xF9,  /* 0x016C-0x016F (364-367) */
+
+  (char)0xDB, (char)0xFB, (char)0xD9, (char)0xF9,  /* 0x0170-0x0173 (368-371) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0174-0x0177 (372-375) */
+  (char)'\0', (char)0xAC, (char)0xBC, (char)0xAF,  /* 0x0178-0x017B (376-379) */
+  (char)0xBF, (char)0xAE, (char)0xBE, (char)'\0'   /* 0x017C-0x017F (380-383) */
 };
 
 static const cexcept exc2iso2Array[] =
 {
-  { 0x02C7 , 0xB7 } , { 0x02D8 , 0xA2 } , { 0x02D9 , 0xFF } , 
-  { 0x02DB , 0xB2 } , { 0x02DD , 0xBD } 
+  { 0x02C7 , (char)0xB7 } , { 0x02D8 , (char)0xA2 } , { 0x02D9 , (char)0xFF } , 
+  { 0x02DB , (char)0xB2 } , { 0x02DD , (char)0xBD } 
 };
 
 static const cexcept exc2iso3Array[] =
 {
-  { 0x02D8 , 0xA2 } , { 0x02D9 , 0xFF }
+  { 0x02D8 , (char)0xA2 } , { 0x02D9 , (char)0xFF }
 };
 
 static const cexcept exc2iso4Array[] =
 {
-  { 0x02C7 , 0xB7 } , { 0x02C9 , 0xAF } , { 0x02D9 , 0xFF } ,
-  { 0x02DB , 0xB2 }
+  { 0x02C7 , (char)0xB7 } , { 0x02C9 , (char)0xAF } , { 0x02D9 , (char)0xFF } ,
+  { 0x02DB , (char)0xB2 }
 };
 
 static const cexcept exc2iso7Array[] =
 {
-  { 0x02BC , 0xA2 } , { 0x02BD , 0xA1 } , { 0x0385 , 0xB5 } ,
-  { 0x0386 , 0xB6 } , { 0x0388 , 0xB8 } , { 0x0389 , 0xB9 } ,
-  { 0x038A , 0xBA } , { 0x038C , 0xBC } , { 0x038E , 0xBE } ,
-  { 0x038F , 0xBF }
+  { 0x02BC , (char)0xA2 } , { 0x02BD , (char)0xA1 } , { 0x0385 , (char)0xB5 } ,
+  { 0x0386 , (char)0xB6 } , { 0x0388 , (char)0xB8 } , { 0x0389 , (char)0xB9 } ,
+  { 0x038A , (char)0xBA } , { 0x038C , (char)0xBC } , { 0x038E , (char)0xBE } ,
+  { 0x038F , (char)0xBF }
 };
 
 static const cexcept exc2iso8Array[] =
 {
-  { 0x00D7 , 0xAA } , { 0x00E7 , 0xBA } , { 0x0333 , 0xDF }
+  { 0x00D7 , (char)0xAA } , { 0x00E7 , (char)0xBA } , { 0x0333 , (char)0xDF }
 };
 
 static const cexcept exc2iso9Array[] =
 {
-  { 0x011E , 0xD0 } , { 0x011F , 0xF0 } , { 0x0130 , 0xDD } ,
-  { 0x0131 , 0xFD } , { 0x015E , 0xDE } , { 0x015F , 0xFE }
+  { 0x011E , (char)0xD0 } , { 0x011F , (char)0xF0 } , { 0x0130 , (char)0xDD } ,
+  { 0x0131 , (char)0xFD } , { 0x015E , (char)0xDE } , { 0x015F , (char)0xFE }
 };
 
 static const cexcept exc2iso10Array[] =
 {
-  { 0x0110 , 0xA9 } , { 0x0111 , 0xB9 } , { 0x0112 , 0xA2 } ,
-  { 0x0113 , 0xB2 } , { 0x0122 , 0xA3 } , { 0x0123 , 0xB3 } ,
-  { 0x012A , 0xA4 } , { 0x012B , 0xB4 } , { 0x0130 , 0xBD } ,
-  { 0x0136 , 0xA6 } , { 0x0137 , 0xB6 } , { 0x0138 , 0xFF } ,
-  { 0x013B , 0xA8 } , { 0x013C , 0xA8 } , { 0x014A , 0xAF } ,
-  { 0x015E , 0xBE } , { 0x0160 , 0xAA } , { 0x0161 , 0xBA } ,
-  { 0x0166 , 0xAB } , { 0x0167 , 0xBB } , { 0x0168 , 0xD7 } ,
-  { 0x0169 , 0xF7 } , { 0x016A , 0xAE } , { 0x016B , 0xBE } ,
-  { 0x017D , 0xAC } , { 0x017E , 0xBC } , { 0x0335 , 0xAD } ,
-  { 0x0336 , 0xBD }
+  { 0x0110 , (char)0xA9 } , { 0x0111 , (char)0xB9 } , { 0x0112 , (char)0xA2 } ,
+  { 0x0113 , (char)0xB2 } , { 0x0122 , (char)0xA3 } , { 0x0123 , (char)0xB3 } ,
+  { 0x012A , (char)0xA4 } , { 0x012B , (char)0xB4 } , { 0x0130 , (char)0xBD } ,
+  { 0x0136 , (char)0xA6 } , { 0x0137 , (char)0xB6 } , { 0x0138 , (char)0xFF } ,
+  { 0x013B , (char)0xA8 } , { 0x013C , (char)0xA8 } , { 0x014A , (char)0xAF } ,
+  { 0x015E , (char)0xBE } , { 0x0160 , (char)0xAA } , { 0x0161 , (char)0xBA } ,
+  { 0x0166 , (char)0xAB } , { 0x0167 , (char)0xBB } , { 0x0168 , (char)0xD7 } ,
+  { 0x0169 , (char)0xF7 } , { 0x016A , (char)0xAE } , { 0x016B , (char)0xBE } ,
+  { 0x017D , (char)0xAC } , { 0x017E , (char)0xBC } , { 0x0335 , (char)0xAD } ,
+  { 0x0336 , (char)0xBD }
 };
 
 static const char uni2ibmArray1[] =  /* beginning with 0xA0 (160) */
 {
-  0xFF, 0xAD, 0x9B, 0x9C,  /* 0xA0-0xA3 (160-163) */
-  0xCF, 0x9D, 0xDD, 0x15,  /* 0xA4-0xA7 (164-167) */
-  0xF9, 0xB7, 0xA6, 0xAE,  /* 0xA8-0xAB (168-171) */
-  0xAA, 0xF0, 0xA9, 0xEE,  /* 0xAC-0xAF (172-175) */
-
-  0xF8, 0xF1, 0xFD, 0xFC,  /* 0xB0-0xB3 (176-179) */
-  0xEF, 0xE6, 0x14, 0xF9,  /* 0xB4-0xB7 (180-183) */
-  0xF7, 0xD5, 0xA7, 0xAF,  /* 0xB8-0xBB (184-187) */
-  0xAC, 0xAB, 0xF3, 0xA8,  /* 0xBC-0xBF (188-191) */
-
-  0xB7, 0xB5, 0xB6, 0xC7,  /* 0xC0-0xC3 (192-195) */
-  0x8E, 0x8F, 0x92, 0x80,  /* 0xC4-0xC7 (196-199) */
-  0xD4, 0x90, 0xD2, 0xD3,  /* 0xC8-0xCB (200-203) */
-  0xDE, 0xD6, 0xD7, 0xD8,  /* 0xCC-0xCF (204-207) */
-
-  0xD1, 0xA5, 0xE3, 0xE0,  /* 0xD0-0xD3 (208-211) */
-  0xE2, 0xE5, 0x99, 0x8E,  /* 0xD4-0xD7 (202-215) */
-  0x9D, 0xEB, 0xE9, 0xEA,  /* 0xD8-0xDB (216-219) */
-  0x9A, 0xED, 0xE8, 0xE1,  /* 0xDC-0xDF (220-223) */
-
-  0x85, 0xA0, 0x83, 0xC6,  /* 0xE0-0xE3 (224-227) */
-  0x84, 0x86, 0x91, 0x87,  /* 0xE4-0xE7 (228-231) */
-  0x8A, 0x82, 0x88, 0x89,  /* 0xE8-0xEB (232-235) */
-  0x8D, 0xA1, 0x8C, 0x8B,  /* 0xEC-0xEF (236-239) */
-
-  0xD0, 0xA4, 0x95, 0xA2,  /* 0xF0-0xF3 (240-243) */
-  0x93, 0xE4, 0x94, 0xF6,  /* 0xF4-0xF7 (244-247) */
-  0x9B, 0x97, 0xA3, 0x96,  /* 0xF8-0xFB (248-251) */
-  0x81, 0xEC, 0xE7, 0x98,  /* 0xFC-0xFF (252-255) */
-
-  '\0', '\0', 0xC6, 0xC7,  /* 0x0100-0x0103 (256-259) */
-  0xA4, 0xA5, 0x8F, 0x86,  /* 0x0104-0x0107 (260-263) */
-  '\0', '\0', '\0', '\0',  /* 0x0108-0x010B (264-267) */
-  0xAC, 0x9F, 0xD2, 0xD4,  /* 0x010C-0x010F (268-271) */
-
-  0xD1, 0xD0, '\0', '\0',  /* 0x0110-0x0113 (272-275) */
-  '\0', '\0', '\0', '\0',  /* 0x0114-0x0117 (276-279) */
-  0xA8, 0xA9, 0xB7, 0xD8,  /* 0x0118-0x011B (280-283) */
-  '\0', '\0', '\0', '\0',  /* 0x011C-0x011F (284-287) */
-
-  '\0', '\0', '\0', '\0',  /* 0x0120-0x0123 (288-291) */
-  '\0', '\0', '\0', '\0',  /* 0x0124-0x0127 (292-295) */
-  '\0', '\0', '\0', '\0',  /* 0x0128-0x012B (296-299) */
-  '\0', '\0', '\0', '\0',  /* 0x012C-0x012F (300-302) */
-
-  '\0', '\0', '\0', '\0',  /* 0x0130-0x0133 (304-307) */
-  '\0', '\0', '\0', '\0',  /* 0x0134-0x0137 (308-311) */
-  '\0', 0x91, 0x92, '\0',  /* 0x0138-0x013B (312-315) */
-  '\0', 0x95, 0x96, '\0',  /* 0x013C-0x013F (316-319) */
-
-  '\0', 0x9D, 0x88, 0xE5,  /* 0x0140-0x0143 (320-323) */
-  0xE4, '\0', '\0', 0xD5,  /* 0x0144-0x0147 (324-327) */
-  0xE5, '\0', '\0', '\0',  /* 0x0148-0x014B (328-331) */
-  '\0', '\0', '\0', '\0',  /* 0x014C-0x014F (332-335) */
-
-  0x8A, 0x8B, '\0', '\0',  /* 0x0150-0x0153 (336-339) */
-  0xE8, 0xEA, '\0', '\0',  /* 0x0154-0x0157 (340-343) */
-  0xFC, 0xFD, 0x97, 0x98,  /* 0x0158-0x015B (344-347) */
-  '\0', '\0', 0xB8, 0xAD,  /* 0x015C-0x015F (348-351) */
-
-  0xE6, 0xE7, 0xDD, 0xEE,  /* 0x0160-0x0163 (352-355) */
-  0x9B, 0x9C, '\0', '\0',  /* 0x0164-0x0167 (356-359) */
-  '\0', '\0', '\0', '\0',  /* 0x0168-0x016B (360-363) */
-  '\0', '\0', 0xDE, 0x85,  /* 0x016C-0x016F (364-367) */
-
-  0xEB, 0xFB, '\0', '\0',  /* 0x0170-0x0173 (368-371) */
-  '\0', '\0', '\0', '\0',  /* 0x0174-0x0177 (372-375) */
-  '\0', 0x8D, 0xAB, 0xBD,  /* 0x0178-0x017B (376-379) */
-  0xBE, 0xA6, 0xA7, '\0'   /* 0x017C-0x017F (380-383) */
+  (char)0xFF, (char)0xAD, (char)0x9B, (char)0x9C,  /* 0xA0-0xA3 (160-163) */
+  (char)0xCF, (char)0x9D, (char)0xDD, (char)0x15,  /* 0xA4-0xA7 (164-167) */
+  (char)0xF9, (char)0xB7, (char)0xA6, (char)0xAE,  /* 0xA8-0xAB (168-171) */
+  (char)0xAA, (char)0xF0, (char)0xA9, (char)0xEE,  /* 0xAC-0xAF (172-175) */
+
+  (char)0xF8, (char)0xF1, (char)0xFD, (char)0xFC,  /* 0xB0-0xB3 (176-179) */
+  (char)0xEF, (char)0xE6, (char)0x14, (char)0xF9,  /* 0xB4-0xB7 (180-183) */
+  (char)0xF7, (char)0xD5, (char)0xA7, (char)0xAF,  /* 0xB8-0xBB (184-187) */
+  (char)0xAC, (char)0xAB, (char)0xF3, (char)0xA8,  /* 0xBC-0xBF (188-191) */
+
+  (char)0xB7, (char)0xB5, (char)0xB6, (char)0xC7,  /* 0xC0-0xC3 (192-195) */
+  (char)0x8E, (char)0x8F, (char)0x92, (char)0x80,  /* 0xC4-0xC7 (196-199) */
+  (char)0xD4, (char)0x90, (char)0xD2, (char)0xD3,  /* 0xC8-0xCB (200-203) */
+  (char)0xDE, (char)0xD6, (char)0xD7, (char)0xD8,  /* 0xCC-0xCF (204-207) */
+
+  (char)0xD1, (char)0xA5, (char)0xE3, (char)0xE0,  /* 0xD0-0xD3 (208-211) */
+  (char)0xE2, (char)0xE5, (char)0x99, (char)0x8E,  /* 0xD4-0xD7 (202-215) */
+  (char)0x9D, (char)0xEB, (char)0xE9, (char)0xEA,  /* 0xD8-0xDB (216-219) */
+  (char)0x9A, (char)0xED, (char)0xE8, (char)0xE1,  /* 0xDC-0xDF (220-223) */
+
+  (char)0x85, (char)0xA0, (char)0x83, (char)0xC6,  /* 0xE0-0xE3 (224-227) */
+  (char)0x84, (char)0x86, (char)0x91, (char)0x87,  /* 0xE4-0xE7 (228-231) */
+  (char)0x8A, (char)0x82, (char)0x88, (char)0x89,  /* 0xE8-0xEB (232-235) */
+  (char)0x8D, (char)0xA1, (char)0x8C, (char)0x8B,  /* 0xEC-0xEF (236-239) */
+
+  (char)0xD0, (char)0xA4, (char)0x95, (char)0xA2,  /* 0xF0-0xF3 (240-243) */
+  (char)0x93, (char)0xE4, (char)0x94, (char)0xF6,  /* 0xF4-0xF7 (244-247) */
+  (char)0x9B, (char)0x97, (char)0xA3, (char)0x96,  /* 0xF8-0xFB (248-251) */
+  (char)0x81, (char)0xEC, (char)0xE7, (char)0x98,  /* 0xFC-0xFF (252-255) */
+
+  (char)'\0', (char)'\0', (char)0xC6, (char)0xC7,  /* 0x0100-0x0103 (256-259) */
+  (char)0xA4, (char)0xA5, (char)0x8F, (char)0x86,  /* 0x0104-0x0107 (260-263) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0108-0x010B (264-267) */
+  (char)0xAC, (char)0x9F, (char)0xD2, (char)0xD4,  /* 0x010C-0x010F (268-271) */
+
+  (char)0xD1, (char)0xD0, (char)'\0', (char)'\0',  /* 0x0110-0x0113 (272-275) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0114-0x0117 (276-279) */
+  (char)0xA8, (char)0xA9, (char)0xB7, (char)0xD8,  /* 0x0118-0x011B (280-283) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x011C-0x011F (284-287) */
+
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0120-0x0123 (288-291) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0124-0x0127 (292-295) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0128-0x012B (296-299) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x012C-0x012F (300-302) */
+
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0130-0x0133 (304-307) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0134-0x0137 (308-311) */
+  (char)'\0', (char)0x91, (char)0x92, (char)'\0',  /* 0x0138-0x013B (312-315) */
+  (char)'\0', (char)0x95, (char)0x96, (char)'\0',  /* 0x013C-0x013F (316-319) */
+
+  (char)'\0', (char)0x9D, (char)0x88, (char)0xE5,  /* 0x0140-0x0143 (320-323) */
+  (char)0xE4, (char)'\0', (char)'\0', (char)0xD5,  /* 0x0144-0x0147 (324-327) */
+  (char)0xE5, (char)'\0', (char)'\0', (char)'\0',  /* 0x0148-0x014B (328-331) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x014C-0x014F (332-335) */
+
+  (char)0x8A, (char)0x8B, (char)'\0', (char)'\0',  /* 0x0150-0x0153 (336-339) */
+  (char)0xE8, (char)0xEA, (char)'\0', (char)'\0',  /* 0x0154-0x0157 (340-343) */
+  (char)0xFC, (char)0xFD, (char)0x97, (char)0x98,  /* 0x0158-0x015B (344-347) */
+  (char)'\0', (char)'\0', (char)0xB8, (char)0xAD,  /* 0x015C-0x015F (348-351) */
+
+  (char)0xE6, (char)0xE7, (char)0xDD, (char)0xEE,  /* 0x0160-0x0163 (352-355) */
+  (char)0x9B, (char)0x9C, (char)'\0', (char)'\0',  /* 0x0164-0x0167 (356-359) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0168-0x016B (360-363) */
+  (char)'\0', (char)'\0', (char)0xDE, (char)0x85,  /* 0x016C-0x016F (364-367) */
+
+  (char)0xEB, (char)0xFB, (char)'\0', (char)'\0',  /* 0x0170-0x0173 (368-371) */
+  (char)'\0', (char)'\0', (char)'\0', (char)'\0',  /* 0x0174-0x0177 (372-375) */
+  (char)'\0', (char)0x8D, (char)0xAB, (char)0xBD,  /* 0x0178-0x017B (376-379) */
+  (char)0xBE, (char)0xA6, (char)0xA7, (char)'\0'   /* 0x017C-0x017F (380-383) */
 };
 
 static const char uni2ibmArray2[] =  /* beginning with 0x2550 (9552) */
 {
-  0xCD, 0xBA, 0xD5, 0xD6,  /* 0x0250-0x0253 (9552-9555) */
-  0xC9, 0xB8, 0xB7, 0xBB,  /* 0x0254-0x0257 (9556-9559) */
-  0xD4, 0xD3, 0xC8, 0xBE,  /* 0x0258-0x025B (9560-9563) */
-  0xBD, 0xBC, 0xC6, 0xC7,  /* 0x025C-0x025F (9564-9567) */
-
-  0xCC, 0xB5, 0xB6, 0xB9,  /* 0x0260-0x0263 (9568-9571) */
-  0xD1, 0xD2, 0xCB, 0xCF,  /* 0x0264-0x0267 (9572-9575) */
-  0xD0, 0xCA, 0xD8, 0xD7,  /* 0x0268-0x026B (9576-9579) */
-  0xCE                     /* 0x026C        (9578     ) */
+  (char)0xCD, (char)0xBA, (char)0xD5, (char)0xD6,  /* 0x0250-0x0253 (9552-9555) */
+  (char)0xC9, (char)0xB8, (char)0xB7, (char)0xBB,  /* 0x0254-0x0257 (9556-9559) */
+  (char)0xD4, (char)0xD3, (char)0xC8, (char)0xBE,  /* 0x0258-0x025B (9560-9563) */
+  (char)0xBD, (char)0xBC, (char)0xC6, (char)0xC7,  /* 0x025C-0x025F (9564-9567) */
+
+  (char)0xCC, (char)0xB5, (char)0xB6, (char)0xB9,  /* 0x0260-0x0263 (9568-9571) */
+  (char)0xD1, (char)0xD2, (char)0xCB, (char)0xCF,  /* 0x0264-0x0267 (9572-9575) */
+  (char)0xD0, (char)0xCA, (char)0xD8, (char)0xD7,  /* 0x0268-0x026B (9576-9579) */
+  (char)0xCE                                       /* 0x026C        (9578     ) */
 };
 
 static const cexcept exc2ibm437Array[] =
 {
-  { 0x0192 , 0x9F } , { 0x0393 , 0xE2 } , { 0x0398 , 0xE9 } ,
-  { 0x03A0 , 0xE3 } , { 0x03A3 , 0xE4 } , { 0x03A6 , 0xE8 } ,
-  { 0x03A9 , 0xEA } , { 0x03B1 , 0xE0 } , { 0x03B4 , 0xEB } ,
-  { 0x03B7 , 0xFC } , { 0x03C3 , 0xE5 } , { 0x03D2 , 0xE7 } ,
-  { 0x20C3 , 0x13 } , { 0x2191 , 0x18 } , { 0x2192 , 0x1A } ,
-  { 0x2193 , 0x19 } , { 0x2194 , 0x1D } , { 0x2195 , 0x12 } ,
-  { 0x21A8 , 0x17 } , { 0x2205 , 0xED } , { 0x2208 , 0xEE } ,
-  { 0x220E , 0xFE } , { 0x2219 , 0xFA } , { 0x221A , 0xFB } ,
-  { 0x221E , 0xEC } , { 0x2229 , 0xEF } , { 0x2248 , 0xF7 } ,
-  { 0x2261 , 0xF0 } , { 0x2264 , 0xF3 } , { 0x2265 , 0xF2 } ,
-  { 0x2310 , 0xA9 } , { 0x2319 , 0x1C } , { 0x2320 , 0xF4 } ,
-  { 0x2321 , 0xF5 } , { 0x2500 , 0xC4 } , { 0x2502 , 0xB3 } ,
-  { 0x250C , 0xDA } , { 0x2510 , 0xBF } , { 0x2514 , 0xC0 } ,
-  { 0x2518 , 0xD9 } , { 0x251C , 0xC3 } , { 0x2524 , 0xB4 } ,
-  { 0x252C , 0xC2 } , { 0x2534 , 0xC1 } , { 0x253C , 0xC5 } ,
-  { 0x2580 , 0xDF } , { 0x2584 , 0xDC } , { 0x2588 , 0xDB } ,
-  { 0x258C , 0xDD } , { 0x2590 , 0xDE } , { 0x2591 , 0xB0 } ,
-  { 0x2592 , 0xB1 } , { 0x2593 , 0xB2 } , { 0x25B2 , 0x1E } ,
-  { 0x25B6 , 0x10 } , { 0x25BC , 0x1F } , { 0x25C0 , 0x11 } ,
-  { 0x263A , 0x01 } , { 0x263B , 0x02 } , { 0x2660 , 0x06 } ,
-  { 0x2663 , 0x05 } , { 0x2665 , 0x03 } , { 0x2666 , 0x04 }
+  { 0x0192 , (char)0x9F } , { 0x0393 , (char)0xE2 } , { 0x0398 , (char)0xE9 } ,
+  { 0x03A0 , (char)0xE3 } , { 0x03A3 , (char)0xE4 } , { 0x03A6 , (char)0xE8 } ,
+  { 0x03A9 , (char)0xEA } , { 0x03B1 , (char)0xE0 } , { 0x03B4 , (char)0xEB } ,
+  { 0x03B7 , (char)0xFC } , { 0x03C3 , (char)0xE5 } , { 0x03D2 , (char)0xE7 } ,
+  { 0x20C3 , (char)0x13 } , { 0x2191 , (char)0x18 } , { 0x2192 , (char)0x1A } ,
+  { 0x2193 , (char)0x19 } , { 0x2194 , (char)0x1D } , { 0x2195 , (char)0x12 } ,
+  { 0x21A8 , (char)0x17 } , { 0x2205 , (char)0xED } , { 0x2208 , (char)0xEE } ,
+  { 0x220E , (char)0xFE } , { 0x2219 , (char)0xFA } , { 0x221A , (char)0xFB } ,
+  { 0x221E , (char)0xEC } , { 0x2229 , (char)0xEF } , { 0x2248 , (char)0xF7 } ,
+  { 0x2261 , (char)0xF0 } , { 0x2264 , (char)0xF3 } , { 0x2265 , (char)0xF2 } ,
+  { 0x2310 , (char)0xA9 } , { 0x2319 , (char)0x1C } , { 0x2320 , (char)0xF4 } ,
+  { 0x2321 , (char)0xF5 } , { 0x2500 , (char)0xC4 } , { 0x2502 , (char)0xB3 } ,
+  { 0x250C , (char)0xDA } , { 0x2510 , (char)0xBF } , { 0x2514 , (char)0xC0 } ,
+  { 0x2518 , (char)0xD9 } , { 0x251C , (char)0xC3 } , { 0x2524 , (char)0xB4 } ,
+  { 0x252C , (char)0xC2 } , { 0x2534 , (char)0xC1 } , { 0x253C , (char)0xC5 } ,
+  { 0x2580 , (char)0xDF } , { 0x2584 , (char)0xDC } , { 0x2588 , (char)0xDB } ,
+  { 0x258C , (char)0xDD } , { 0x2590 , (char)0xDE } , { 0x2591 , (char)0xB0 } ,
+  { 0x2592 , (char)0xB1 } , { 0x2593 , (char)0xB2 } , { 0x25B2 , (char)0x1E } ,
+  { 0x25B6 , (char)0x10 } , { 0x25BC , (char)0x1F } , { 0x25C0 , (char)0x11 } ,
+  { 0x263A , (char)0x01 } , { 0x263B , (char)0x02 } , { 0x2660 , (char)0x06 } ,
+  { 0x2663 , (char)0x05 } , { 0x2665 , (char)0x03 } , { 0x2666 , (char)0x04 }
 };
 
 static const cexcept exc2ibm850Array[] =
 {
-  { 0x0192 , 0x9F } , { 0x20C3 , 0x13 } , { 0x2191 , 0x18 } ,
-  { 0x2192 , 0x1A } , { 0x2193 , 0x19 } , { 0x2194 , 0x1D } ,
-  { 0x2195 , 0x12 } , { 0x21A8 , 0x17 } , { 0x220E , 0xFE } ,
-  { 0x2219 , 0xFA } , { 0x2319 , 0x1C } , { 0x2500 , 0xC4 } ,
-  { 0x2502 , 0xB3 } , { 0x250C , 0xDA } , { 0x2510 , 0xBF } ,
-  { 0x2514 , 0xC0 } , { 0x2518 , 0xD9 } , { 0x251C , 0xC3 } ,
-  { 0x252C , 0xC2 } , { 0x2534 , 0xC1 } , { 0x253C , 0xC5 } ,
-  { 0x2580 , 0xDF } , { 0x2584 , 0xDC } , { 0x2588 , 0xDB } ,
-  { 0x2591 , 0xB0 } , { 0x2592 , 0xB1 } , { 0x2593 , 0xB2 } ,
-  { 0x25B2 , 0x1E } , { 0x25B6 , 0x10 } , { 0x25BC , 0x1F } ,
-  { 0x25C0 , 0x11 } , { 0x263A , 0x01 } , { 0x263B , 0x02 } ,
-  { 0x2660 , 0x06 } , { 0x2663 , 0x05 } , { 0x2665 , 0x03 } ,
-  { 0x2666 , 0x04 }
+  { 0x0192 , (char)0x9F } , { 0x20C3 , (char)0x13 } , { 0x2191 , (char)0x18 } ,
+  { 0x2192 , (char)0x1A } , { 0x2193 , (char)0x19 } , { 0x2194 , (char)0x1D } ,
+  { 0x2195 , (char)0x12 } , { 0x21A8 , (char)0x17 } , { 0x220E , (char)0xFE } ,
+  { 0x2219 , (char)0xFA } , { 0x2319 , (char)0x1C } , { 0x2500 , (char)0xC4 } ,
+  { 0x2502 , (char)0xB3 } , { 0x250C , (char)0xDA } , { 0x2510 , (char)0xBF } ,
+  { 0x2514 , (char)0xC0 } , { 0x2518 , (char)0xD9 } , { 0x251C , (char)0xC3 } ,
+  { 0x252C , (char)0xC2 } , { 0x2534 , (char)0xC1 } , { 0x253C , (char)0xC5 } ,
+  { 0x2580 , (char)0xDF } , { 0x2584 , (char)0xDC } , { 0x2588 , (char)0xDB } ,
+  { 0x2591 , (char)0xB0 } , { 0x2592 , (char)0xB1 } , { 0x2593 , (char)0xB2 } ,
+  { 0x25B2 , (char)0x1E } , { 0x25B6 , (char)0x10 } , { 0x25BC , (char)0x1F } ,
+  { 0x25C0 , (char)0x11 } , { 0x263A , (char)0x01 } , { 0x263B , (char)0x02 } ,
+  { 0x2660 , (char)0x06 } , { 0x2663 , (char)0x05 } , { 0x2665 , (char)0x03 } ,
+  { 0x2666 , (char)0x04 }
 };
 
 static const cexcept exc2ibm852Array[] =
 {
-  { 0x02C7 , 0xF3 } , { 0x02D8 , 0xF4 } , { 0x02DB , 0xF2 } ,
-  { 0x02DD , 0xF1 } , { 0x20C3 , 0x13 } , { 0x2191 , 0x18 } ,
-  { 0x2192 , 0x1A } , { 0x2193 , 0x19 } , { 0x2194 , 0x1D } ,
-  { 0x2195 , 0x12 } , { 0x21A8 , 0x17 } , { 0x220E , 0xFE } ,
-  { 0x2219 , 0xFA } , { 0x2319 , 0x1C } , { 0x2500 , 0xC4 } ,
-  { 0x2502 , 0xB3 } , { 0x250C , 0xDA } , { 0x2510 , 0xBF } ,
-  { 0x2514 , 0xC0 } , { 0x2518 , 0xD9 } , { 0x251C , 0xC3 } ,
-  { 0x252C , 0xC2 } , { 0x2534 , 0xC1 } , { 0x253C , 0xC5 } ,
-  { 0x2580 , 0xDF } , { 0x2584 , 0xDC } , { 0x2588 , 0xDB } ,
-  { 0x2591 , 0xB0 } , { 0x2592 , 0xB1 } , { 0x2593 , 0xB2 } ,
-  { 0x25B2 , 0x1E } , { 0x25B6 , 0x10 } , { 0x25BC , 0x1F } ,
-  { 0x25C0 , 0x11 } , { 0x263A , 0x01 } , { 0x263B , 0x02 } ,
-  { 0x2660 , 0x06 } , { 0x2663 , 0x05 } , { 0x2665 , 0x03 } ,
-  { 0x2666 , 0x04 }
+  { 0x02C7 , (char)0xF3 } , { 0x02D8 , (char)0xF4 } , { 0x02DB , (char)0xF2 } ,
+  { 0x02DD , (char)0xF1 } , { 0x20C3 , (char)0x13 } , { 0x2191 , (char)0x18 } ,
+  { 0x2192 , (char)0x1A } , { 0x2193 , (char)0x19 } , { 0x2194 , (char)0x1D } ,
+  { 0x2195 , (char)0x12 } , { 0x21A8 , (char)0x17 } , { 0x220E , (char)0xFE } ,
+  { 0x2219 , (char)0xFA } , { 0x2319 , (char)0x1C } , { 0x2500 , (char)0xC4 } ,
+  { 0x2502 , (char)0xB3 } , { 0x250C , (char)0xDA } , { 0x2510 , (char)0xBF } ,
+  { 0x2514 , (char)0xC0 } , { 0x2518 , (char)0xD9 } , { 0x251C , (char)0xC3 } ,
+  { 0x252C , (char)0xC2 } , { 0x2534 , (char)0xC1 } , { 0x253C , (char)0xC5 } ,
+  { 0x2580 , (char)0xDF } , { 0x2584 , (char)0xDC } , { 0x2588 , (char)0xDB } ,
+  { 0x2591 , (char)0xB0 } , { 0x2592 , (char)0xB1 } , { 0x2593 , (char)0xB2 } ,
+  { 0x25B2 , (char)0x1E } , { 0x25B6 , (char)0x10 } , { 0x25BC , (char)0x1F } ,
+  { 0x25C0 , (char)0x11 } , { 0x263A , (char)0x01 } , { 0x263B , (char)0x02 } ,
+  { 0x2660 , (char)0x06 } , { 0x2663 , (char)0x05 } , { 0x2665 , (char)0x03 } ,
+  { 0x2666 , (char)0x04 }
 };
 
 static const cexcept exc2ibm860Array[] =
 {
-  { 0xC0 , 0x91 } , { 0xC1 , 0x86 } , { 0xC2 , 0x8F }, { 0xC3 , 0x8E } ,
-  { 0xC8 , 0x92 } , { 0xC9 , 0x86 } , { 0xCA , 0x89 }, { 0xCC , 0x98 } ,
-  { 0xCD , 0x8B } , { 0xD2 , 0xA9 } , { 0xD3 , 0x9F }, { 0xD4 , 0x8C } ,
-  { 0xD5 , 0x99 } , { 0xD9 , 0x9D } , { 0xDA , 0x96 }, { 0xE3 , 0x84 } ,
-  { 0xF5 , 0x94 }
+  { 0xC0 , (char)0x91 } , { 0xC1 , (char)0x86 } , { 0xC2 , (char)0x8F }, { 0xC3 , (char)0x8E } ,
+  { 0xC8 , (char)0x92 } , { 0xC9 , (char)0x86 } , { 0xCA , (char)0x89 }, { 0xCC , (char)0x98 } ,
+  { 0xCD , (char)0x8B } , { 0xD2 , (char)0xA9 } , { 0xD3 , (char)0x9F }, { 0xD4 , (char)0x8C } ,
+  { 0xD5 , (char)0x99 } , { 0xD9 , (char)0x9D } , { 0xDA , (char)0x96 }, { 0xE3 , (char)0x84 } ,
+  { 0xF5 , (char)0x94 }
 };
 
 static const cexcept exc2ibm863Array[] =
 {
-  { 0xA4 , 0x98 } , { 0xA6 , 0xA0 } , { 0xA8 , 0xA4 }, { 0xAF , 0xA7 } ,
-  { 0xB3 , 0xA6 } , { 0xB4 , 0xA1 } , { 0xB8 , 0xA5 }, { 0xBE , 0xAD } ,
-  { 0xC0 , 0x8E } , { 0xC2 , 0x84 } , { 0xC8 , 0x91 }, { 0xCA , 0x92 } ,
-  { 0xCB , 0x94 } , { 0xCE , 0xA8 } , { 0xCF , 0x95 }, { 0xD4 , 0x99 } ,
-  { 0xD9 , 0x9D } , { 0xDB , 0x9E } , { 0xFA , 0x97 }
+  { 0xA4 , (char)0x98 } , { 0xA6 , (char)0xA0 } , { 0xA8 , (char)0xA4 }, { 0xAF , (char)0xA7 } ,
+  { 0xB3 , (char)0xA6 } , { 0xB4 , (char)0xA1 } , { 0xB8 , (char)0xA5 }, { 0xBE , (char)0xAD } ,
+  { 0xC0 , (char)0x8E } , { 0xC2 , (char)0x84 } , { 0xC8 , (char)0x91 }, { 0xCA , (char)0x92 } ,
+  { 0xCB , (char)0x94 } , { 0xCE , (char)0xA8 } , { 0xCF , (char)0x95 }, { 0xD4 , (char)0x99 } ,
+  { 0xD9 , (char)0x9D } , { 0xDB , (char)0x9E } , { 0xFA , (char)0x97 }
 };
 
 static const cexcept exc2ibm865Array[] =
 {
-  { 0xA4 , 0xAF } , { 0xFA , 0x97 }
+  { 0xA4 , (char)0xAF } , { 0xFA , (char)0x97 }
 };
 
 static const cexcept exc2winArray[] =
 {
-  { 0x0118 , 0x9F } , { 0x0152 , 0x8C } , { 0x0153 , 0x9C } ,
-  { 0x0160 , 0x8A } , { 0x0161 , 0x9A } , { 0x0192 , 0x83 } ,
-  { 0x02C6 , 0x88 } , { 0x02DC , 0x98 } , { 0x2013 , 0x96 } ,
-  { 0x2014 , 0x97 } , { 0x2018 , 0x91 } , { 0x2019 , 0x92 } ,
-  { 0x201A , 0x82 } , { 0x201C , 0x93 } , { 0x201D , 0x94 } ,
-  { 0x201E , 0x84 } , { 0x2020 , 0x86 } , { 0x2021 , 0x87 } ,
-  { 0x2026 , 0x85 } , { 0x2031 , 0x89 } , { 0x2039 , 0x8B } ,
-  { 0x20A0 , 0x9B } , { 0x2122 , 0x99 } , { 0x220F , 0x95 }
+  { 0x0118 , (char)0x9F } , { 0x0152 , (char)0x8C } , { 0x0153 , (char)0x9C } ,
+  { 0x0160 , (char)0x8A } , { 0x0161 , (char)0x9A } , { 0x0192 , (char)0x83 } ,
+  { 0x02C6 , (char)0x88 } , { 0x02DC , (char)0x98 } , { 0x2013 , (char)0x96 } ,
+  { 0x2014 , (char)0x97 } , { 0x2018 , (char)0x91 } , { 0x2019 , (char)0x92 } ,
+  { 0x201A , (char)0x82 } , { 0x201C , (char)0x93 } , { 0x201D , (char)0x94 } ,
+  { 0x201E , (char)0x84 } , { 0x2020 , (char)0x86 } , { 0x2021 , (char)0x87 } ,
+  { 0x2026 , (char)0x85 } , { 0x2031 , (char)0x89 } , { 0x2039 , (char)0x8B } ,
+  { 0x20A0 , (char)0x9B } , { 0x2122 , (char)0x99 } , { 0x220F , (char)0x95 }
 };