Caml1999T037&@C+TestDynlinkР'Harness&Import'Harness>testsuite/tools/testDynlink.mlOO@ OO@@ @3@@@@#intA;@@A@@@@@&_none_@@A@A@$charB;@@A@@@@@@A@&stringQ;@@A@@@@@ @@@%bytesC;@@A@@@@@@@@%floatD;@@A@@@@@@@@$boolE;@@%falsec@@!@$trued@@'@@@A@@@@@(@A@$unitF;@@"()e@@2@@@A@@@@@3@A@ #exnG;@@@A@@@@@7@@@#effH;@@O@A@A@@@@@@@@@@,continuationI;@@Q@@P@B A@nY@@@@@@O@@@%arrayJ;@@R@AA@@@@@@Y@@@ $listK;@@S@A"[]f@@f@"::g@@@T@@s@ @@A@Y@@@@@v@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@A@@@@@@@@%int32N;@@A@@@@@@@@%int64O;@@A@@@@@@@@&lazy_tP;@@X@AA@Y@@@@@@@@ 5extension_constructorR;@@A@@@@@@@@*floatarrayS;@@A@@@@@@@@&iarrayT;@@Y@AA@Y@@@@@@@@ *atomic_locU;@@Z@AA@@@@@@@@@ .Assert_failure`#@@@@@J@@@@@@@@[@@A۠=ocaml.warn_on_literal_patternߐ@@0Division_by_zero]#@@@A堰  @+End_of_file\#$@@@A@'FailureY#,@'@@A@0Invalid_argumentX#5@0@@A$#@-Match_failureV#>@@=@9@;@@a@@A54@)Not_foundZ#O@@@A=<@-Out_of_memoryW#W@@@A E#D#@.Stack_overflow^#_@@@A(M+L+@.Sys_blocked_io_#g@@@A0U3T3@)Sys_error[#o@j@@A9^<]<@:Undefined_recursive_modulea#x@@w@s@u@@h@@AJoMnM@:Continuation_already_takenb#@@@ARwUvU@&Stdlib@@@@A3@@@O@@@3@@@@ఠ#run SS@AA@@@'Harness&Import&config@@@.A@@@@+Environment!t@@@/A@!@@"@"$mode@@@A@'@@($unitF@@@/A@)@@*A@#@@$A@@@A@3@L@@@࣠@&config"ASS@BA@@A3@]PS@@@@@  @@#env#ASS@CA@@C3@!X@@@@@@@@$mode$A S S@ DA@@D3@W@@@@@@@@ డ&Format&printf!T"T@ %T&T@@@&Stdlib&format!a@&Stdlib&Format)formatter@@@$unitF@@@@@@@@@@@*format.mliww)@@.Stdlib__Format@2-@@@*@&stringQ@@@O@@N@@@E@E@!E@8@@ME@7@@@0@@@@@@@@@@3oooooooo@my@p@q@@@@ภ8CamlinternalFormatBasicsS&FormatUTTA;&Format8CamlinternalFormatBasics'format6!a@|!b@}!c@~!d@!e@!f@@@@@'#fmt$ @@@נ`@@@@B@@A@A@@@ F@@@డ!=&U 'U @@!a@@@@@@$boolE@@@@@@@&%equalBA @@@@*stdlib.mliyy@@Q@! @@@A@A@A@A@VA@ZA@A@@@@@@'@@@@@@@@@ఐc$modeiUjU @@@@@ภ&NativeuU vU@;&Native$mode@@@ @@@AB@@A;testsuite/tools/harness.mlin n @@@T@@@@:G@@@@@B@@@G@@&nativeUU @@UU!@@:F@!@(bytecodeU(U0@@U'U1@@GF@.@UU2@@1@@@@CE@3@@ఠ,test_programV4:V4F@EA@@&stringQ@@@kE@3@I@@@డ+Environment,in_test_root+EnvironmentWIMWIX@ WIYWIe@@@#@@@@@@)@@@@@-@@@@@@@@?testsuite/tools/environment.mliJ  J  D@@1M@ @@@;@@@_@@^@@@@]@@\D@@@[@@Z@@YA@@ఐ#env WIfWIi@@@WN@@డ"#exe'Harness WIk!WIr@ $WIs%WIv@@@&stringQ@@@@@@@@@@@NN7@@`@@@@@@@u@@t@@@s@@r@@+test_scriptMWIxNWI@@PWIwQWI@@*@@@~G@G@@@ZWIj[WI@@{@@@m@G@|@@ @@@A@eV46 @@@ఠ4compile_test_programp[LRq[Lf@FA@@@#@@@E@@@@$listKb@@@!@@@!E@!@&custom@@@!@@@!@@!@-@@@!@@!$unitF@@@!@@!@@!E@!@@!E@@@E@3@:@@@@@࣠@%paramAĠ"()[Lg[Li@;bI@@@N@@@@A@@A@@d@@@@P3@_[LN@ . @@@@@@@@ డQ+Out_channel.with_open_text\lp\l{@ \l|\l@@@&stringQ@@@j@@i@@+Out_channel!t@@@h@@g!a@@@f@@e@@d@@c@/out_channel.mliH  H  @@@3Stdlib__Out_channelQ@,'@@@$@@@@@@@!@@@@@@@@H@/H@@@@@@@@@3@\@@@@6test_install_script.ml/\l0\l@@2\l3\l@@K@@@I@I@311111111@q@@@@࣠@"ocAJ\lK\l@aGA@@S@@@@@@@డ&Printf'fprintf`]a]@ d]e]@@@&Stdlib+out_channel@@@@@@ &format!a@+out_channel@@@$unitF@@@@@@@@@@@@@*printf.mliR[[R[@@.Stdlib__Printf@@61@@@.@@@@@@)@J@@@@@J@oJ@@@J@1@@@/@@@@@@@@@@@@3@z@@@@t@u@@@@ఐ"oc]]@@@@@@6@@ภUT]gASภ`  s let load_library basename = let lib = Dynlink.adapt_filename (basename ^ ".cma") in let dir = Filename.concat @@@@@K@K@7@ภtƠ+Caml_string ;+Caml_stringI!x@!b@!c@ !d@!!e@"!f@#@@@!a@&@ܠ'@@@@@@@@@@@}0,($ @@@@BCAYAAv}}w$@@@c@ภl@l@L@@@@K@@ภ#$| S basename in Dynlink.loadfile (Filename.concat dir lib); Printf.printf "Loaded @@i@@@K@K@@ภ7,Char_literal9;,Char_literal!a@!b@!c@!d@!e@!f@@@@8@$charB@@@9)%!@@@:@BLAYAA%%%%@@@l@e@@@@K@K@@ภ2 s\n" lib let () = let () = Dynlink.allow_unsafe_modules true in List.iter load_library (List.tl (Array.to_list Sys.argv)) @@@@@K@K@ @ภF*)@@-J@J@J@J@J@L@Рg@@@.K@nK@K@K@K@K@ݠ@@@K@6@@@?#L@$%&'@@@K@B@@"@K-L@#./01@@@K@N@@.@W`,789:@@@K@Y@@9@buL@s6ABCD@@@K@e@@E@nL@N@xyz{@@@pK@q@ I let load_library basename = let lib = Dynlink.adapt_filename (basename ^ ".cma") in let dir = Filename.concat %S basename in Dynlink.loadfile (Filename.concat dir lib); Printf.printf "Loaded %%s\n" lib let () = let () = Dynlink.allow_unsafe_modules true in List.iter load_library (List.tl (Array.to_list Sys.argv)) V@V@u@@@qK@K@}@@]\@@àV@@@-K@m@@డ&libdir+EnvironmentQgRg!@ Ug"Vg(@@@@@@@@@@@@@@xv  yv  *@@H@@@@@@@@@@@@@@@@ఐ#env}g)~g,@p@@@@gg-@@L@@@&@@J@4@\lh.3@@@@@@@@v@@I@I@Z@@ @@w[@ డ%flushi59i5>@@m+out_channel@@@b@@a$unitF@@@`@@_@rjjsj@@w@@@@@@@@@@@@@@@@డ?&stdouti5?i5E@'@@@@%pp%pp@@@  @@3@@@(I@*I@)@@>@@u@@@+H@&@@ఠ(compiler&jGOjGW@ HA@@8@@@PH@,.@డ5)tool_path+Environment jGZ jGe@  jGf jGo@@@V@@@@@@'Harness&Import$mode@@@@@@j@@@@@@r@@@@@>@@@@@@@@@@@@I|  J|  @@yJ@50@@@@@@:@@9@-@@@8@@7@&@@@6@@5@%@@@4@@3b@@@2@@1@@0@@/@@.@@ఐn#env cjGp djGs@V@@@@ఐj$mode pjGt qjGx@@@@@&ocamlc {jGz |jG@@ ~jGy jG@@^@@@TI@\I@[@@(ocamlopt jG jG@@ jG jG@@j@@@RI@^I@]@@ @@@A@ jGK @@@ఠ$args' k k@ IA@@ $@@@fH@a@@@cH@_3        @@@@@@ภ":: l n  A; ' 6@@U@ (B@AA@A @@ ""-I l l@@ l@@@ภ lA(+dynlink l l@@  l@@1H@n-@ภ+ l*A)డ #lib'Harness l@  l l@@@\$mode@@@@@@@@@@@@@@@@@@@ZMMZMo@@kc@0@@@@@@}@@|@@@@{@@z@@@y@@x@@wt@@ఐ0$mode 6l 7l@@@p@@'dynlink Al Bl@@ Dl El@@<@@@I@I@@@c @@I@@ภ VlA(-linkall ]l ^l@@  `l@@H@@ภ imA"-o pm qm@@  sm@@H@@ภ |mAఐϠ,test_program  m@Ұ @@H@@ภϰ mA͠6test_install_script.ml m m @@  m @@H@@ภ"[] n  A; @@@@AA@A s@@ @A@ I@@@@H@@@!A@ I@@@@H@@@=A@  I@@@@H@ @@YA@ #I@@@@H@@@u A@ ,I@p@@@uH@@@A@ 5'I@h@@@mH@t$@@A@ >0@@@eH@l+@@ k#@@76@@@d1@A@ k)@@@ఠ%files( o  % o  *@ JA@@sp@@@@@@H@3        @K`Y@Z@[@@@డ )files_for'Harness o  - o  4@  o  5 o  >@@.source_and_cmi&optionL$boolE@@@@@@@@@ f@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@^_)@@ d@C>@@;96@@@@@@@@@ @@@@@@3@@@@@@21@@@@@@@@@@@@@@@@@@@@@@~@fภ$None U;   ߐ@@W@@@@AA@A [@@ @ [@pm@@@@@@@@@@ఐ $mode o  ? o  C@ (@@ @@3test_install_script o  E o  X@@ o  D o  Y@@}@@@I@I@@@ภ o  [ o  hAఐ,test_program  o  g@ @@@@@I@I@I@@ภ9A7@A@ =@@@I@@@ o  Z#@@@@@I@@@*@@@A@ o  !,@@@ఠ'compile) p l t p l {@ KA@@fd|@@@ H@@@@@@@@@@H@@@k@@@!H@@@H@@@ H@3        @+$@%@&@@@࣠%*opt*Aఠ+ )p l ~ *p l @ @LA@@+H@ H@ 3 & & & & & & & &@> 4p l p 5}  @@@@ภ%false @@@ L@ 3 m m m m m m m m@!mf@g@h@@@డ "&& w   w  @@ U@@@V@@U@ ]@@@T@@S#@@@R@@Q@@P(%sequandBA ^@@@@ ] ^@@ b]@ @@@@@@ @@ @@@@ @@ >@@@ @@ @@ =@@డ 3   w   w  @ @@@ M@ @@ @@@  @@@ @@ @@ X@@ఐ Ӡ$mode w   w  @ `@@ e@@ภ(Bytecode w   w  @;(Bytecode p@@@@B@@A kl ll@@@ ?S@@  @@ &N@ z@@ @@l@@@ @ N@ @@డ 9ocamlc_fails_after_rename'Harness w   w  @  w  w  @@@ l&config@@@@@@@@@@@ i iE@@ sf@@@@@@@ @@ @@@ @@ @@ఐ V&config7w  8w  @ ;@@ @@2@@@@@ @!N@ @@j @@@A@Dv   @@@ఠ&stdlibOz v Pz v @fOA@@@@@!L@!3NNNNNNNN@@@@@@ภ$trueaz v bz v @; %@@@AB@@A2@@ @@@'@@@!@A@jz v | @@@@@u{  v{  @@#intA@@@!uL@!3uuuuuuuu@(6/@0@1@@@@ఠ&output{  {  @PA@@$listK @@@!w@@@!vL@!@@{  {  @@@+@@@! %@డ +run_process+Environment|  |  @ |  |  @@'runtime&optionL$boolE@@@@@@@@%stubs@@@@@@@@&stdlib!@@@@@@@@4prefix_path_with_cwd/,@@@@@@@@%quiet=:@@@@@@@@%failsKH@@@ @@@ @@ @ [@@@ @@ @ a@@@@@%argv0h n@@@@@@@@@ {@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ `` ac@@ R@@@@@@!5@@@!4@@!3@@@!2@@@!1@@!0@@@!/@@@!.@@!-@@@!,@@@!+@@!* @@@!)@@@!(@@!'͠@@@!&@@@!%@@!$@ @@@!#@@!"@@@@!!@@! ~@@@!@@@!@@!@}|@@@!@@@!@@!@B@@@!@0-@@@!@@@!@@!@@!@@!@@!@@!@@!@@!@@!@@!@@! @@! H@ภ$Some;G@A@AA@A@@ఐl'runtime|  |  @@@@@@!M@!M@!d@@@ F @@@!h@ภgf@@1@@@!@@@!@@!x@ภ0/ఐ&stdlib|  |  @@@*@@@!M@!M@!@@@ s @@@!@,ภ@@^/@@@!@@@!@@!@.ภ@@n1@@@!@@@!@@!@0ภ@@~3@@@!@@@!@@!@@ఐY#envN|  O|  @A@@@@ఐm(compiler[|  \|  @@@E@@@!M@!M@!@Dภ9@9@G@@@!@@@!@@!@@ఐo$args|  |  @@@SR@@@!z@@@!yM@!M@!@@@@@@@@!M@!t@A@{  @@డ .display_output+Environment}  }  @ }  }  @@@! @@@L@@@K@@J @@@I@@H@     ! @@T@@@@@@@!@@@!@@! !@@@!@@!3@RLE@F@G@@@@ఐS&output}  @ @@21@@@!@@@!L@!L@!@@F@@@U@@m@@@@@@w@@@@@@@A@H@!@A@@ ఐ'compile  "  )@@@@@ k i @@@!@@@!@@!@ @@@!@@! h@@@!@@!@@!3        @&@@@ ภ@@  @@@!@@@!@@!@@ภ p1  *2  ,@ o@@@ @@@!I@!"@@<@@@@@!H@!(@@ఐU%filesJ@ . 2K@ . 7@0@@ 6@@ఐ_'compileV@ . 9 @W @@ A@@ @@@ ՠ@ @@!H@b @@I@- @@G@v @@ `@y @@ @ @@  @ @@  @  @@  @  A@ E@! @A@ @@ఠ6test_libraries_in_progsE  tE  @QA@@2expected_exit_code #intA@@@+jE@"@@@"@@"@@@@*vE@"@@" @kj@@@*o@@@*nE@"@@";@@@+E@"@@"E@" @@" E@"@@"E@"3@  @ 9@ :@ ;@@@࣠66A:E  E  '@RA@@<3@ME  o+f@@@@@E   @@#envAE  (E  +@SA@@?3@!T@@@@@@@@)librariesAE  ,E  5@TA@@E3@S@@@@@@@@@ఠ+has_c_stubsH  H  @UA@@@@@@"]I@"@@"@@@".I@"@@"I@"3@$0k@'@(@@@࣠@'libraryAH  H  @)VA@@3        @+H  H @@@@@  @@డ&H  'H  @@@@@@@""@@"!@@@@" @@"@@@"@@"@@"300000000@%1C@(@)@@@@డ#%HH  IH  @"@@@K@"8@@"9@@@"7 @@@"6@@"5@@"4@@ఐ\$modebH  cH  @@@+@@ภ(BytecodenH  oH  @@@@L@"H9@@@@@@@"2@"IL@"CA@@డ"<>H H @@!a@@@ @@@a@@@@@@@)%notequalBA_@@@@^~QQ_~Q@@cR@@@@I@"O@@"P@@@"N@@@"M@@"L@@"Kv@@ఐ'libraryH  H @@@@@'dynlinkH H  @@H H @@@@@@=@@@"0@"^L@"Z@@H  @@@A@I@"`@A@@@ఠ+has_c_stubsII&@WA@@$boolE@@@'I@"a3@@@@@@డm$List&existsI)I-@ I.I4@@@@!a@#@@&n*@@@&m@@&l@@&k@$listK@@@&j@@&i9@@@&h@@&g@@&f@(list.mli$$$$@@,Stdlib__Liste@-(@@@@E@*E@(E@'I@'@@')@@@'@@'@@'@(@@@'@@'^@@@'@@'@@'[@@ఐb+has_c_stubsRI5SI@@e@@@W@@@'@@'@@@'@@'r@@ఐ)librariesiIAjIJ@e@@@@p@@@A@nI@@@ఠ'runtime֠yM3;zM3B@XA@@ @@@'I@'3xxxxxxxx@@@@@@డ  O[aO[c@ @@@ @@@'@@'@ @@@'@@'+@@@'@@'@@'@@డ NEPNEQ@@@@J@'@@'@@@'@@@'@@'@@':@@ఐ$modeNEKNEO@M@@G@@ภ(BytecodeNERNEZ@@@@ K@'U@@@@R@@@'@'K@']@@డ^hjP~P~@g@@@g@@@(@@(@f@@@(@@(@@@(@@(@@(|@@డ}䠐 O[w O[x@@@@K@(@@(@@@(@@@(@@(@@(@@ఐn2expected_exit_code#O[d$O[v@S@@@@ภ$None/O[y0O[}@@@@E@(.@@@@@@@(@(/L@((@@డ#notHP~IP~@@@@@O@@N@@@M@@L(%boolnotAA@@@LLLt@@\@@@@@@@(4@@(3@@@(2@@(1@@ఐ&configvP~wP~@z@@@ %target_launcher_searches_for_ocamlrun}P~~P~@3 %target_launcher_searches_for_ocamlrun@@@ ^@@@@@E#3,has_ocamlnat  e@@@ @@@@As f js f }@@V@3,has_ocamlopt o@@@@@A@Au  u  @@W@33has_relative_libdir w@@@@@@@@B @A)w  !*w  D@@X@32has_runtime_search-  @@@@@@@@C/@A8y p t9y p @@ Y@3>launcher_searches_for_ocamlrun< @@@@@D9@AB{  C{  @@Z@F3Uag?Uar@@@@@@(\J@(^J@(]3@@డ.0SVsTVs@-@@@J@(d@@(e@@@(c+@@@(b@@(a@@(`N@@ఐ2expected_exit_codemVs|nVs@@@[@@ภ$NoneyVszVs@ @@@E@(ui@@@@@@@(Z@(vK@(oq@@I @@ur@A@TQU@@@ఠ2expected_exit_codeؠXX@ZA@@E@*E@(w3@@@@@@ఐ2expected_exit_codeYY@ְ@@*3@@@@Ġ$SomeZZ@ఠ$code٠ZZ@[A@@AE@(z@@@@@E@@E@@@ఐ$code\-7\-;@ @@@@83@6@@@Ġ$None]<D]<H@ U@@@@_5@@_5@@@డ\"||a a @@@@@]@@\@@@@[@@Z@@@Y@@X@@W'%sequorBAŠ@@@@@@^@! @@@@@@(@@(@@@@(@@(@@@(@@(@@(r@@డ&`'`@@@@@@@(@@(@@@@(@@(@@@(@@(@@(@@డ#Sys&cygwinH`I`@ L`M`@@ @@@ !@  @@ [@ @@@@@(M@(M@(@@డ預k`l`@@@@@@@(@@(@@@@(@@( @@@(@@(@@(@@డeg``@d@@@N@(@@(@@@(b@@@(@@(@@(@@ఐ$mode``@+@@@@ภ&Native``@;@@@O@( @@@@ 0@@@(@(O@(@@డ=$List#mem``@ ``@@@!a@#@@&@Ƞ @@@&@@&@@@&@@&@@&@+'C'C+'C'b@@h@"@@@N@(@@(@ @@@(@@(@@@(@@(@@(W@@$unix` `@@ ` `@@d@@ఐ=)libraries`` @@@~q@@N@@ @@@(@(O@(y@@ @@ @@@(@(N@(@@+`,` @@A@@@(@(M@(@@డ  ?a A@a C@ @@@ @@@)@@)@ @@@)@@( @@@(@@(@@(@@డ#not_a `a @@@@@@@)@@)@@@)@@)@@డ&Config9supports_shared_libraries&Config|a  }a &@ a 'a @@@$boolE@@@)@0utils/config.mli%$$%$$@@&ConfigH@@@F@@@) N@)N@)@@:@@ @@@)@)N@)@@ఐɠ+has_c_stubsa Da O@(@@ @@@)M@)M@) @@a a P@@@@@(@)M@)@@ @@7@@@)L@(@Bdd@@3E@)"@@ff@@ K@)+@`@@?-@@@AY@@A>@A@X @@@@ఠ)exit_code+hh@\A@@ u@@@*jI@)3@Xd]@^@_@@@@ఠ&output,hh@]A@@ r o@@@*l@@@*kI@)@@" @@@"@@@)@@ఠ%fails-i i @1^A@@@@@)J@)2@డ"<>,i 0-i 2@@@@kJ@)@@)@@@)@@@)@@)@@)K@@ఐ2expected_exit_codeFi Gi /@U@@X@@@Pi 3Qi 4@@K@)c@@Ui Vi 5@@7f@A@Xi @@డ+run_process+Environmentfj9?gj9J@ jj9Kkj9V@@ @@   @@@**@@@*)@@*(   @@@*'@@@*&@@*%  ɠ @@@*$@@@*#@@*"  Ԡ @@@*!@@@* @@*  ߠ @@@*@@@*@@*   @@@*@@@*@@*@@@@*@@*@ @@@*@@*   @@@*@@@*@@*@  @@@*@@@*@@*@ _@@@* @ M J@@@*@@@* @@* @@* @@* @@*@@*@@*@@*@@*@@*@@*@@*3@@@@@@ .ภ  ఐ}'runtimej9_j9f@@@ 8@@@*J@*J@*@@@c @@@* @ 8ภ = <ఐ%stubsj9hj9m@y@@ E@@@*J@*J@*9@@@ @@@*=@ Gภ  @@ k J@@@*@@@*@@*M@ Iภ  @@ { L@@@*@@@*@@*]@ Kภ  @@  N@@@*@@@*@@*m@ Mภ % ఐF%fails`j9Xaj9]@|@@ Z@@@*yJ@*J@*@@@͠ @@@*@@ఐ#envxj9nyj9q@@@@@ఐϠ,test_programj9rj9~@Ӱ@@ o@@@*tJ@*J@*@ nภc@c@ ٠ q@@@*@@@*@@*@@ఐϠ)librariesj9j9@@@@@G@@@Ǡ@@@*J@*i@^ @@ @A@h@@ డ.display_output+Environmentll@ ll@@ "@@@ " !@@@*@@@*@@*.@@@*@@*3@@@@@@@@@ఐ&outputll@ @@ B A@@@*@@@*J@*J@*@@4@@@@@*I@*#@డ~"<> m m@@@@{H@*@@*@@@*@@@*@@*@@*>@@ఐ=)exit_code%m&m@G@@K@@ఐ2expected_exit_code2m3m@A@@X@@@@@@@*I@*^@డJ,fail_because'HarnessHnIn@ LnMn@@@&Stdlib'format4!a@ @@@ܠ:@@@ݠ!b@@@@@@@@@eVVeV@@e@-(@@@%@"@@@+0@@+/@ @@+iH@*H@+O@@+hH@+@@+.H@*Ҡ/@@@*ՠ.@@@*֠ @AD!a'format6)H@+5H@*@*@*@*$@*@A8CamlinternalFormatBasics'format6@*2@*1@*4@*7@*A@*@@*@*9@*@*@@*@@*U@@*@@ภUTnn*ASภ` Ǡภh@@wJ@+w@@@+-I@+9@ภxʠ,#+ & is expected to return with exit code (@(@@@@+JI@+MI@+L-@ภޠ#Int8;#Inta!x@+!b@,!c@-!d@.!e@/!f@0@@@!y@3!a@6@(int_conv@@@2@@@)precision@ @@@ @@ @@ @@@#C?;73@@@ @DDAYAA%%@@@d@ภ>%Int_d@;%Int_d4@@@@@@@P@@AUU@@@E@@@>@@@+eI@+o@ภVW@@D J@+QH@+xI@+N@@@+fI@+t@ภi,No_precisionk;,No_precisionS!a@@@@(@@@@BAAAlLNlLq@@@o@@@c"-@@@+gI@+|@ภ7@@ 7j@@@*I@+I@++I@+HI@+cq@@@*I@+I@+,I@+II@+d  RJ@+V@@@+kI@+@@@.`J@+;"`J@+@@@@+KI@+b@@@<n-"#$mJ@+ @@@+1I@+G@@ @IJ@*9./0{J@*@@@+I@+*,@ *%s is expected to return with exit code %d3@3@R@@@+I@+I@+8@@:9@@ĠQF@AI@+_I@+VI@+I@+@AI@+sI@+jI@+mI@+pI@+I@+@@+I@+/@+I@+@@*I@+p@@ఐ,test_programWo+FXo+R@@@I@+@@ఐӠ2expected_exit_codefo+Sgo+e@u@@@@"@@H@*@@lm@@@ @@@ @@~@ @@@ @@\@q @@@  @@  @ Z @@  p@  A@ E@+ @A@ @@ఠ6test_libraries_in_prog.qlrql@_A@@2expected_exit_code @@@-@@@-E@+@@+@@@@-E@+@@+@ v u@@@-@@@-E@+@@+6@@@-E@+@@+E@+@@+E@+@@+E@+3@  H A@ B@ C@@@࣠33/A7qlql@`A@@9@@ql@@#env0Aqlql@aA@@93@!K@@@@@@@@)libraries1Aqlql@bA@@?3@M@@@@@@@@డisurr@r@@@r@@@+@@+@q@@@+@@+@@@+@@+@@+3@$0e@'@(@@@@డrr@@@@UI@+@@+@@@+@@@+@@+@@+@@ఐ+$mode1r2r@@@k+@@ภ&Native=r>r@@@@wJ@+9@@@@@@@+@+J@+A@@డ$List#memZr[r@ ^r_r@@@@@E@.E@+I@+@@+@ @@@+@@+@@@+@@+@@+n@@'threadsrr@@rr@@{@@ఐ)librariesrr@@@@@8@@@@@+@+J@+@@i @@@@@+I@+@@ఠ.threads_plugin2t%t3@cA@@@@@,I@+3@@@@డ)in_libdir+Environmentu6>u6I@ u6Ju6S@@@@@@@@@@@@@@)@@@@@@@@D : :D : _@@L@@@@)@@@,@@,@@@@,@@,?@@@,@@,@@,>@@ఐ-#envu6Tu6W@@@bK@@డ~(Filename&concatu6Yu6a@ u6bu6h@@@&stringQ@@@,@@,@ @@@,@@,@@@,@@,@@,@,filename.mli^^@@0Stdlib__FilenameC@% @@@@@@-9@@-8@@@@-7@@-6@@@-5@@-4@@-3@@'threadsLu6jMu6q@@Ou6iPu6r@@;@@@-IK@-KK@-J@@,threads.cmxs`u6tau6@@cu6sdu6@@E@@@-GK@-MK@-L@@mu6Xnu6@@@@@,@-NK@-E@@ @@@A@xt! @@డ#Sys+file_existsww@ ww@@@@@@@@-S@@-R@@@-Q@@-P3@@@@@@@ఐ.threads_pluginww@ @@5@@@-\I@-^I@-]@@* @@*@@@-_I@-Z@డ,fail_because'Harnessxx@ xx@@|@@@|#H@-bt@@@-es@@@-f/H@-g@AG@-t@-u@-v@-w@AWB)@-z*@-{)@-|,@-}/@-~.@-@@-@-y/@-x@-s@@-d@@-c;@@-at@@ภxxAภQ P %threads.cmxs is not expected to exist@@5@@@-I@-I@-@ภ@@aJ@-@@@-qI@-I@-@@@-rI@-I@- vJ@-@@@-I@-@@<@J@-J@-@@@-I@-@?N@N@@@@-I@-I@-@@UT@@1*@A"ޠI@-Ġ?I@-Š:I@-ƠI@-@A٠I@-ʠSI@-ˠNI@-̠QI@-͠TI@-ΠI@-@@-I@-ɑ/@-I@-@@-pI@- @@@@ @ภz z @@@@H@-@w@@@<@@@ఐK6test_libraries_in_prog|#|9@ @@H(D@@@-@@@-@@-@@@@-@@-@@@@-@@@-@@-r@@@-@@-@@-@@-.@hఐ+2expected_exit_code|;|M@@@a;@@ఐ*#env|N|Q@@@_H@@ఐ&)libraries |R |[@@@aU@@K@@YI@-X@ r@@:Z@GA@E@.[@A@ qln @@@ఠ+not_dynlinkI ~ag ~ar@ 3dA@@@ G+@@@.2G@."@@@.0E@.@@.  @@@.E@. @@. E@.3 , , , , , , , ,@@@@@@࣠@!lKA D~as E~at@ [eA@@"3 > > > > > > > >@1 L~ac M~a@@@@@  @@డ#not Y~aw Z~az@ @@@ @@@.@@. @@@.@@.3 \ \ \ \ \ \ \ \@+C@"@#@@@@డ$List#mem y~a| z~a@  }~a ~~a@@ @@@Z@@.#@ a@@@.!@@.  @@@.@@.@@.*@@'dynlink ~a ~a@@ ~a ~a@@p7@@ఐf!l ~a ~a@A@@D@@ ~a{_@@ a@@@.@.4H@..M@@[g@@N@qhA@E@.6o@A@l@@@ఠ%filesL  @ fA@@C@@@@.^@@@.]E@.83        @@@@@@@ఠ*re_compileM  @ gA@@LJ`@@@.f@@@.e@@.d@v@@@.c@@.bI@@@.a@@.`@@._E@.9&@@4@@@4@@@.<-@ఐ4compile_test_program!! @^@@@@@@.K@@.J@@@@.A@@@.@@@@@.I@@@.H@@.G@@@@.F@@.E@@@.D@@.C@@.B@@.?@@.>b@@ภ{!<!=@z@@@@@@.hF@.lr@@=@@@@l@@.mF@.\{@A@!N@@@ఠ2expected_exit_codeN!Y!Z@!phA@@֠@@.p@@@.qE@.n3![![![![![![![![@@@@@@@@ภ$None!p!q@@@@@@@.r@A@!x@@@ఠ)librariesO!! @!iA@@p  @@@.@@@.E@.x@@@.E@.s3!!!!!!!!@3D=@>@?@@@డ $List&filter!!@ !!@@@@!a@#_@@&@@@&@@&@@&@@@@&@@&?@@@&@@&@@&@^-)-)^-)-X@@o@*%@@@@L@@.~@@@.}@@.|@@.{@V@@@.z@@.y[Z@@@.w@@.v@@.uQ@@ఐ֠+not_dynlink!!&@ @@@  @@@.@@@.@@. @@@.@@.l@@ఐ .&config"'"-@ @@ k{@)libraries"."7@ I @@Z@@@.F@.F@.@@{ @@@A@"# @@ డ $List$iter"5FJ"6FN@ "9FO":FS@@@@!a@$@@% w@@@%@@%@@%@8@@@%@@% @@@%@@%@@%@67@@5U@)$@@@@54@@@/@@@/F@.@@.&@@@.@@.@@.@%@@@.@@. @@@.@@.@@.3"s"s"s"s"s"s"s"s@@@@@@@ఐ 6test_libraries_in_prog"FU"Fk@V@@@@@.@@@.@@.@ @@@.@@.@rq@@@.@@@.@@.0@@@.@@.@@.@@.2@(ఐ`2expected_exit_code"Fm"F@"@@#?@@@.@@@.I@.I@.J@@ఐ ܠ#env"F"F@ İ@@!W@@"FT"F@@@@@@.@@@.@@.f@@@.@@.h@@ఐl)libraries"F"F@r@@@@@.G@/G@/}@@ @@ @@@/F@.@డ!~"<># # @@@@@/@@@/E@/ @@/ @ @@/ @@@/ @@/ @@/@@ఐѠ2expected_exit_code#*#+@@@@@ภ$None#6#7@@@@'E@/@@@@@@@/ F@/@ఐo*re_compile#Lix#Mi@@@@@@/*@@@/)@@/(@@@@/'@@/&@@@/%@@/$@@/#@͐ภ#8ภ#qi#ri@@@@@@@/$?@@@@@@/gH@/H@/@@ @@!@@@/L@@@A$Nio@@!@@@/@@$S@@@ @@@Ġ$^;A$_;C@@@@@!@@@/@@!@@@/@@@డ"$List$iter$t$u@ $x$y@@?@@@@@@@/F@/@@/@@@@/@@/@@/@?@@@/@@/"@@@/@@/@@/@@డ$*erase_file'Harness$$@ $$@@@@@@@@/@@/@@@/@@/:@@ఐ%files$"@Z"@@vF@@@/G@/G@/N@@X"@@"O@@@A$;="@@"Q@"@@"8@X"@@#k@"@@#@"@@#@"@@#@"@@#*@"@@##@q"@@# @""@@# @""A@#7A@/"@A@"@""@#@#D#=@#>@#?@@3$$$$$$$$@#S#G@@@#C+TestDynlinkA@@ H************************************************************************$A@@$A@L@ H $BMM$BM@ H OCaml $C$C@ H $D$D3@ H David Allsopp, University of Cambridge & Tarides %E44%E4@ H %F%F@ H Copyright 2024 David Allsopp Ltd. % G% G@ H %H%Hg@ H All rights reserved. This file is distributed under the terms of %Ihh%Ih@ H the GNU Lesser General Public License version 2.1, with the %J%J@ H special exception on linking described in the file LICENSE. %$K%%KN@ H %*LOO%+LO@ H************************************************************************%0M%1M@ This test verifies that a series of libraries can be loaded via Dynlink. Any failures will cause either an exception or a compilation error. %6Q%7RK@ The test program is given a list of library names (e.g. unix threads) on the command line and uses Dynlink to load that library from a subdirectory with the same name in libdir %0Stdlib__Filename0ʩDZ۽!g.Stdlib__Format00FClW,Stdlib__List0C|Z`>s䠠3Stdlib__Out_channel0E#rڞo3.Stdlib__Printf0rwOt:=:栠+Stdlib__Seq0?72#[O+Stdlib__Sys0b'8=OIn-Stdlib__Uchar0=H^V9>ɠ&R0 mP6%ra@@A[CȰ5?@@!!$$@ޑ@pưؑcm͑@ @ BL@@ ݑ @xt~@  @JTs}@‘@p (@z@gq@@P&@$@$@@@A@@