3
let x = Array.make 20 "" in
4
let w = weak_create 20 in
6
x.(i) <- String.make 20 's';
7
weak_set w i (Some x.(i));
11
match weak_get w i with
12
| None -> raise Not_found
16
if i mod 2 = 0 then x.(i) <- ""
20
match weak_get w i with
21
| None when i mod 2 = 0 -> ()
22
| Some s when i mod 2 = 1 -> if s.[5] <> 's' then raise Not_found
23
| _ -> raise Not_found
66
53 GETGLOBAL End_of_file
80
71 C_CALL1 caml_input_scan_line
85
78 GETGLOBAL End_of_file
94
91 C_CALL1 create_string
100
99 C_CALL4 caml_input
102
102 C_CALL1 caml_input_char
107
109 C_CALL1 create_string
113
116 C_CALL4 caml_input
117
122 PUSHOFFSETCLOSURE0
124
130 PUSHGETGLOBAL End_of_file
134
143 C_CALL1 caml_flush
140
152 C_CALL2 caml_output_char
146
161 C_CALL2 caml_output_char
152
170 C_CALL2 caml_output_int
158
179 C_CALL2 caml_seek_out
161
184 C_CALL1 caml_pos_out
164
189 C_CALL1 caml_channel_size
170
198 C_CALL2 caml_set_binary_mode
173
203 C_CALL1 caml_input_char
176
208 C_CALL1 caml_input_char
179
213 C_CALL1 caml_input_int
182
218 C_CALL1 input_value
188
227 C_CALL2 caml_seek_in
191
232 C_CALL1 caml_pos_in
194
237 C_CALL1 caml_channel_size
197
242 C_CALL1 caml_close_channel
203
251 C_CALL2 caml_set_binary_mode
230
287 C_CALL1 caml_flush
232
290 C_CALL1 caml_flush
237
297 C_CALL1 float_of_string
242
304 C_CALL1 int_of_string
245
309 C_CALL1 caml_flush
251
318 C_CALL2 caml_output_char
253
321 C_CALL1 caml_flush
261
332 C_CALL2 caml_output_char
263
335 C_CALL1 caml_flush
283
360 C_CALL2 caml_output_char
287
367 C_CALL2 caml_output_char
289
370 C_CALL1 caml_flush
297
381 C_CALL2 caml_output_char
317
406 C_CALL2 caml_output_char
326
419 C_CALL1 ml_string_length
332
427 GETGLOBAL "really_input"
348
449 C_CALL1 ml_string_length
354
457 GETGLOBAL "input"
361
466 C_CALL4 caml_input
365
472 PUSHGETGLOBAL <0>(0, <0>(6, 0))
370
479 PUSHGETGLOBAL <0>(0, <0>(7, 0))
379
492 C_CALL1 caml_open_descriptor
382
497 C_CALL1 caml_flush
384
500 C_CALL1 caml_close_channel
391
510 C_CALL3 output_value
400
523 C_CALL1 ml_string_length
406
531 GETGLOBAL "output"
413
540 C_CALL4 caml_output
418
548 C_CALL1 ml_string_length
422
553 C_CALL4 caml_output
426
560 PUSHGETGLOBAL <0>(1, <0>(3, <0>(4, <0>(6, 0))))
431
568 PUSHGETGLOBAL <0>(1, <0>(3, <0>(4, <0>(7, 0))))
440
581 C_CALL1 caml_open_descriptor
443
586 PUSHGETGLOBAL "%.12g"
444
588 C_CALL2 format_float
447
593 PUSHGETGLOBAL "%d"
448
595 C_CALL2 format_int
450
599 GETGLOBAL "false"
452
602 C_CALL2 string_equal
458
612 C_CALL2 string_equal
462
619 GETGLOBAL "bool_of_string"
469
631 GETGLOBAL "false"
479
646 GETGLOBAL "char_of_int"
487
658 C_CALL1 ml_string_length
489
661 C_CALL1 ml_string_length
493
666 C_CALL1 create_string
499
673 C_CALL5 blit_string
505
681 C_CALL5 blit_string
525
709 C_CALL2 greaterequal
535
724 C_CALL2 lessequal
542
735 PUSHGETGLOBAL Invalid_argument
546
741 PUSHGETGLOBAL Failure
552
753 PUSHGETGLOBAL "Pervasives.Exit"
554
757 PUSHGETGLOBAL "Pervasives.Assert_failure"
592
828 C_CALL1 caml_open_descriptor
594
831 C_CALL1 caml_open_descriptor
596
834 C_CALL1 caml_open_descriptor
768
1195 SETGLOBAL Pervasives
773
1203 BRANCHIFNOT 1213
778
1210 PUSHOFFSETCLOSURE0
785
1220 BRANCHIFNOT 1251
789
1225 BRANCHIFNOT 1231
796
1234 BRANCHIFNOT 1244
801
1241 PUSHOFFSETCLOSURE0
803
1244 GETGLOBAL "List.nth"
804
1246 PUSHGETGLOBALFIELD Pervasives, 2
807
1253 PUSHGETGLOBALFIELD Pervasives, 3
812
1262 BRANCHIFNOT 1274
819
1271 PUSHOFFSETCLOSURE0
824
1278 BRANCHIFNOT 1291
827
1282 PUSHOFFSETCLOSURE0
831
1286 PUSHGETGLOBALFIELD Pervasives, 16
837
1297 BRANCHIFNOT 1313
845
1306 PUSHOFFSETCLOSURE0
854
1319 BRANCHIFNOT 1331
862
1328 PUSHOFFSETCLOSURE0
868
1337 BRANCHIFNOT 1350
877
1347 PUSHOFFSETCLOSURE0
884
1357 BRANCHIFNOT 1370
889
1363 PUSHOFFSETCLOSURE0
900
1377 BRANCHIFNOT 1400
902
1380 BRANCHIFNOT 1407
914
1393 PUSHOFFSETCLOSURE0
920
1401 BRANCHIFNOT 1405
923
1407 GETGLOBAL "List.map2"
924
1409 PUSHGETGLOBALFIELD Pervasives, 2
929
1418 BRANCHIFNOT 1437
931
1421 BRANCHIFNOT 1444
943
1434 PUSHOFFSETCLOSURE0
946
1438 BRANCHIFNOT 1442
949
1444 GETGLOBAL "List.iter2"
950
1446 PUSHGETGLOBALFIELD Pervasives, 2
955
1455 BRANCHIFNOT 1476
957
1458 BRANCHIFNOT 1482
970
1472 PUSHOFFSETCLOSURE0
976
1482 GETGLOBAL "List.fold_left2"
977
1484 PUSHGETGLOBALFIELD Pervasives, 2
982
1493 BRANCHIFNOT 1516
984
1496 BRANCHIFNOT 1522
985
1498 PUSH_RETADDR 1509
992
1506 PUSHOFFSETCLOSURE0
1004
1522 GETGLOBAL "List.fold_right2"
1005
1524 PUSHGETGLOBALFIELD Pervasives, 2
1010
1533 BRANCHIFNOT 1549
1015
1539 BRANCHIFNOT 1547
1019
1544 PUSHOFFSETCLOSURE0
1027
1556 BRANCHIFNOT 1570
1036
1567 PUSHOFFSETCLOSURE0
1042
1576 BRANCHIFNOT 1599
1044
1579 BRANCHIFNOT 1605
1051
1587 BRANCHIFNOT 1597
1057
1594 PUSHOFFSETCLOSURE0
1064
1605 GETGLOBAL "List.for_all2"
1065
1607 PUSHGETGLOBALFIELD Pervasives, 2
1070
1616 BRANCHIFNOT 1639
1072
1619 BRANCHIFNOT 1646
1085
1634 PUSHOFFSETCLOSURE0
1089
1640 BRANCHIFNOT 1644
1092
1646 GETGLOBAL "List.exists2"
1093
1648 PUSHGETGLOBALFIELD Pervasives, 2
1098
1657 BRANCHIFNOT 1672
1107
1669 PUSHOFFSETCLOSURE0
1113
1678 BRANCHIFNOT 1692
1122
1689 PUSHOFFSETCLOSURE0
1128
1698 BRANCHIFNOT 1719
1135
1707 BRANCHIFNOT 1713
1142
1716 PUSHOFFSETCLOSURE0
1144
1719 GETGLOBAL Not_found
1150
1728 BRANCHIFNOT 1748
1157
1736 BRANCHIFNOT 1742
1164
1745 PUSHOFFSETCLOSURE0
1166
1748 GETGLOBAL Not_found
1172
1757 BRANCHIFNOT 1773
1182
1770 PUSHOFFSETCLOSURE0
1188
1779 BRANCHIFNOT 1794
1198
1791 PUSHOFFSETCLOSURE0
1204
1800 BRANCHIFNOT 1825
1213
1811 BRANCHIFNOT 1816
1218
1818 PUSHOFFSETCLOSURE0
1227
1831 BRANCHIFNOT 1855
1236
1841 BRANCHIFNOT 1846
1241
1848 PUSHOFFSETCLOSURE0
1250
1861 BRANCHIFNOT 1879
1256
1868 BRANCHIFNOT 1873
1262
1876 PUSHOFFSETCLOSURE0
1264
1879 GETGLOBAL Not_found
1270
1888 BRANCHIFNOT 1917
1278
1897 BRANCHIFNOT 1908
1284
1905 PUSHOFFSETCLOSURE0
1291
1914 PUSHOFFSETCLOSURE0
1305
1932 CLOSUREREC 2, 1885
1312
1943 BRANCHIFNOT 1967
1317
1949 PUSHOFFSETCLOSURE0
1331
1967 GETGLOBAL <0>(0, 0)
1336
1975 BRANCHIFNOT 1996
1338
1978 BRANCHIFNOT 2003
1343
1984 PUSHOFFSETCLOSURE0
1353
1997 BRANCHIFNOT 2001
1356
2003 GETGLOBAL "List.combine"
1357
2005 PUSHGETGLOBALFIELD Pervasives, 2
1362
2014 BRANCHIFNOT 2038
1370
2023 BRANCHIFNOT 2033
1375
2030 PUSHOFFSETCLOSURE0
1379
2035 PUSHOFFSETCLOSURE0
1386
2044 CLOSUREREC 2, 2011
1393
2056 BRANCHIFNOT 2077
1395
2059 BRANCHIFNOT 2084
1408
2074 PUSHOFFSETCLOSURE0
1411
2078 BRANCHIFNOT 2082
1414
2084 GETGLOBAL "List.rev_map2"
1415
2086 PUSHGETGLOBALFIELD Pervasives, 2
1420
2095 CLOSUREREC 1, 2053
1429
2109 BRANCHIFNOT 2123
1438
2120 PUSHOFFSETCLOSURE0
1445
2130 CLOSUREREC 1, 2106
1455
2145 BRANCHIFNOT 2151
1460
2153 PUSHGETGLOBALFIELD Pervasives, 3
1463
2159 BRANCHIFNOT 2165
1468
2167 PUSHGETGLOBALFIELD Pervasives, 3
1474
2177 CLOSUREREC 0, 1200
1476
2182 CLOSURE 1, 2172
1478
2186 CLOSURE 0, 2158
1480
2190 CLOSURE 0, 2144
1482
2194 CLOSUREREC 0, 1217
1483
2198 GETGLOBALFIELD Pervasives, 16
1485
2202 CLOSUREREC 0, 1259
1487
2207 CLOSURE 1, 2139
1489
2211 CLOSUREREC 0, 1277
1490
2215 CLOSUREREC 0, 1294
1491
2219 CLOSURE 0, 2127
1493
2223 CLOSUREREC 0, 1316
1494
2227 CLOSUREREC 0, 1334
1495
2231 CLOSUREREC 0, 1354
1496
2235 CLOSUREREC 0, 1374
1497
2239 CLOSURE 0, 2092
1499
2243 CLOSUREREC 0, 1415
1500
2247 CLOSUREREC 0, 1452
1501
2251 CLOSUREREC 0, 1490
1502
2255 CLOSUREREC 0, 1530
1503
2259 CLOSUREREC 0, 1553
1504
2263 CLOSUREREC 0, 1573
1505
2267 CLOSUREREC 0, 1613
1506
2271 CLOSUREREC 0, 1654
1507
2275 CLOSUREREC 0, 1675
1508
2279 CLOSUREREC 0, 1695
1509
2283 CLOSUREREC 0, 1725
1510
2287 CLOSUREREC 0, 1754
1511
2291 CLOSUREREC 0, 1776
1512
2295 CLOSUREREC 0, 1797
1513
2299 CLOSUREREC 0, 1828
1514
2303 CLOSUREREC 0, 1858
1516
2309 CLOSURE 1, 2042
1518
2314 CLOSUREREC 1, 1928
1519
2318 CLOSUREREC 0, 1942
1520
2322 CLOSUREREC 0, 1972
1558
2397 MAKEBLOCK 37, 0
1565
2410 BRANCHIFNOT 2418
1573
2422 BRANCHIFNOT 2430
1581
2434 BRANCHIFNOT 2447
1585
2440 BRANCHIFNOT 2447
1594
2454 BRANCHIFNOT 2462
1602
2466 BRANCHIFNOT 2474
1610
2478 BRANCHIFNOT 2491
1614
2484 BRANCHIFNOT 2491
1623
2498 BRANCHIFNOT 2520
1627
2504 BRANCHIFNOT 2510
1628
2506 GETGLOBAL "\\t"
1633
2514 BRANCHIFNOT 2540
1634
2516 GETGLOBAL "\\n"
1639
2524 BRANCHIFNOT 2530
1640
2526 GETGLOBAL "\\'"
1645
2534 BRANCHIFNOT 2540
1646
2536 GETGLOBAL "\\\\"
1649
2541 C_CALL1 is_printable
1650
2543 BRANCHIFNOT 2555
1652
2546 C_CALL1 create_string
1661
2558 C_CALL1 create_string
1662
2560 PUSHCONSTINT 92
1669
2569 PUSHCONSTINT 48
1675
2577 PUSHCONSTINT 10
1679
2582 PUSHCONSTINT 48
1687
2592 PUSHCONSTINT 48
1701
2610 BRANCHIFNOT 2619
1702
2612 GETGLOBAL "Char.chr"
1703
2614 PUSHGETGLOBALFIELD Pervasives, 2
1707
2622 CLOSURE 0, 2601
1709
2626 CLOSURE 0, 2494
1711
2630 CLOSURE 0, 2450
1713
2634 CLOSURE 0, 2406
1727
2656 BRANCHIFNOT 2663
1728
2658 GETGLOBAL Not_found
1736
2668 BRANCHIFNOT 2673
1744
2679 PUSHOFFSETCLOSURE0
1751
2689 BRANCHIFNOT 2696
1752
2691 GETGLOBAL Not_found
1760
2701 BRANCHIFNOT 2706
1767
2711 PUSHOFFSETCLOSURE0
1783
2732 C_CALL1 ml_string_length
1786
2736 BRANCHIFNOT 2745
1787
2738 GETGLOBAL "String.rcontains_from"
1788
2740 PUSHGETGLOBALFIELD Pervasives, 2
1799
2756 PUSHGETGLOBAL Not_found
1803
2761 BRANCHIFNOT 2766
1815
2777 C_CALL1 ml_string_length
1818
2781 BRANCHIFNOT 2790
1819
2783 GETGLOBAL "String.contains_from"
1820
2785 PUSHGETGLOBALFIELD Pervasives, 2
1823
2792 PUSH_RETADDR 2807
1827
2800 C_CALL1 ml_string_length
1834
2811 PUSHGETGLOBAL Not_found
1838
2816 BRANCHIFNOT 2821
1850
2832 C_CALL1 ml_string_length
1853
2836 BRANCHIFNOT 2845
1854
2838 GETGLOBAL "String.rindex_from"
1855
2840 PUSHGETGLOBALFIELD Pervasives, 2
1866
2856 C_CALL1 ml_string_length
1878
2873 C_CALL1 ml_string_length
1881
2877 BRANCHIFNOT 2886
1882
2879 GETGLOBAL "String.index_from"
1883
2881 PUSHGETGLOBALFIELD Pervasives, 2
1888
2889 C_CALL1 ml_string_length
1897
2902 C_CALL1 ml_string_length
1902
2910 PUSHGETGLOBALFIELD Char, 2
1906
2917 PUSHGETGLOBALFIELD Char, 3
1913
2928 C_CALL1 ml_string_length
1915
2931 BRANCHIFNOT 2936
1932
2951 PUSHGETGLOBALFIELD Char, 2
1936
2958 PUSHGETGLOBALFIELD Char, 3
1942
2968 C_CALL1 ml_string_length
1946
2973 BRANCHIFNOT 2978
1950
2979 C_CALL1 create_string
1979
3016 C_CALL1 ml_string_length
1988
3028 PUSHGETGLOBAL "\000\"\000\000\004\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
1989
3030 C_CALL2 bitvect_test
1990
3032 BRANCHIFNOT 3038
1995
3039 C_CALL1 is_printable
1996
3041 BRANCHIFNOT 3046
2014
3068 C_CALL1 ml_string_length
2017
3072 BRANCHIFNOT 3077
2021
3078 C_CALL1 create_string
2026
3085 C_CALL1 ml_string_length
2035
3097 PUSHGETGLOBAL "\000\000\000\000\004\000\000\000\000\000\000\016\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
2036
3099 C_CALL2 bitvect_test
2037
3101 BRANCHIFNOT 3120
2054
3124 BRANCHIFNOT 3143
2070
3147 BRANCHIFNOT 3166
2084
3167 C_CALL1 is_printable
2085
3169 BRANCHIFNOT 3177
2092
3178 PUSHCONSTINT 92
2102
3192 PUSHCONSTINT 48
2111
3205 PUSHCONSTINT 10
2115
3210 PUSHCONSTINT 48
2126
3225 PUSHCONSTINT 48
2148
3257 C_CALL1 ml_string_length
2154
3264 C_CALL5 blit_string
2156
3267 C_CALL1 ml_string_length
2163
3275 C_CALL1 ml_string_length
2169
3282 C_CALL5 blit_string
2171
3285 C_CALL1 ml_string_length
2181
3298 C_CALL1 ml_string_length
2191
3311 BRANCHIFNOT 3374
2201
3324 CLOSURE 2, 3294
2202
3327 PUSHGETGLOBALFIELD List, 9
2208
3336 C_CALL1 ml_string_length
2213
3342 C_CALL1 create_string
2215
3345 C_CALL1 ml_string_length
2220
3351 C_CALL5 blit_string
2222
3354 C_CALL1 ml_string_length
2229
3364 CLOSURE 3, 3256
2230
3367 PUSHGETGLOBALFIELD List, 9
2247
3392 C_CALL1 ml_string_length
2258
3406 C_CALL1 ml_string_length
2263
3412 BRANCHIFNOT 3421
2264
3414 GETGLOBAL "String.blit"
2265
3416 PUSHGETGLOBALFIELD Pervasives, 2
2272
3426 C_CALL5 blit_string
2285
3444 C_CALL1 ml_string_length
2290
3450 BRANCHIFNOT 3459
2291
3452 GETGLOBAL "String.fill"
2292
3454 PUSHGETGLOBALFIELD Pervasives, 2
2298
3463 C_CALL4 fill_string
2311
3481 C_CALL1 ml_string_length
2316
3487 BRANCHIFNOT 3496
2317
3489 GETGLOBAL "String.sub"
2318
3491 PUSHGETGLOBALFIELD Pervasives, 2
2321
3497 C_CALL1 create_string
2327
3504 C_CALL5 blit_string
2331
3510 C_CALL1 ml_string_length
2333
3513 C_CALL1 create_string
2339
3520 C_CALL5 blit_string
2345
3529 C_CALL1 create_string
2350
3535 C_CALL4 fill_string
2353
3540 CLOSURE 0, 3526
2355
3544 CLOSURE 0, 3509
2357
3548 CLOSURE 0, 3468
2359
3552 CLOSURE 0, 3431
2361
3556 CLOSURE 0, 3379
2363
3560 CLOSURE 0, 3308
2365
3564 CLOSURE 0, 3013
2367
3568 CLOSURE 0, 2965
2369
3572 CLOSURE 1, 2957
2371
3576 CLOSURE 1, 2950
2373
3581 CLOSURE 1, 2924
2375
3585 CLOSURE 1, 2916
2377
3589 CLOSURE 1, 2909
2379
3593 CLOSUREREC 0, 2651
2381
3598 CLOSURE 1, 2897
2383
3602 CLOSURE 1, 2865
2385
3606 CLOSUREREC 0, 2684
2387
3611 CLOSURE 1, 2852
2389
3615 CLOSURE 1, 2824
2391
3619 CLOSURE 1, 2769
2393
3623 CLOSURE 1, 2724
2395
3627 CLOSURE 1, 2715
2414
3663 MAKEBLOCK 18, 0
2416
3668 SETGLOBAL String
2418
3671 C_CALL1 gc_stat
2420
3675 PUSHCONSTINT 20
2421
3677 C_CALL2 make_vect
2422
3679 PUSHCONSTINT 20
2423
3681 C_CALL1 weak_create
2425
3684 PUSHCONSTINT 19
2430
3692 PUSHCONSTINT 20
2431
3694 PUSHGETGLOBALFIELD String, 0
2442
3708 C_CALL3 weak_set
2453
3724 C_CALL1 gc_full_major
2455
3727 PUSHCONSTINT 19
2461
3735 C_CALL2 weak_get
2464
3740 GETGLOBAL Not_found
2479
3762 PUSHCONSTINT 19
2488
3773 BRANCHIFNOT 3780
2503
3794 C_CALL1 gc_full_major
2505
3797 PUSHCONSTINT 19
2511
3805 C_CALL2 weak_get
2513
3808 BRANCHIFNOT 3832
2519
3815 BRANCHIFNOT 3842
2526
3825 BRANCHIFNOT 3847
2527
3827 GETGLOBAL Not_found
2535
3837 BRANCHIFNOT 3842
2538
3842 GETGLOBAL Not_found
2552
3863 SETGLOBAL T350-heapcheck