Caml1999I037' G*Errortrace(positions;@@%First@@5typing/errortrace.mliTT@@B@&Second@@ T T@@C@@@A@@@@@T@@A@A@A@%ordert;@@$Less@@U U @@,E@%Equal@@%U&U@@5F@$More@@.U/U@@>G@@@A@@@@@2U@@A@AD@A@-swap_positionu@J@@@$@@%@@@&@@'@EWFWF@@UH@@)print_posv*Format_doc'printer@@@(@@@)@ZXGG[XGr@@jI@@*swap_orderw@W@@@*@@+@@@,@@-@nZttoZt@@~J@@-expanded_typex;@@"ty@@%Types)type_expr@@@/\\@@L@(expanded@@)type_expr@@@.\\@@M@@@A@@@@@\\@@@@K@A@1trivial_expansiony@&)type_expr@@@0@@16@@@2@@3@cFFcFx@@N@@$diffz;!a@4@A#got@@ ezez@@P@(expected@@ezez@@Q@@@A@Y@@@@@ezzez@@@@O@A@(map_diff{@@!a@8@@5!b@;@@6@@7@;@@@9@@:@@@<@@=@@>@hh@@R@@+escape_kind|;!a@?@A+Constructorϐ$Path!t@@@B@@lVXlVo@@T@$Univ␠)type_expr@@@A@@mprmp@@.U@$Self@@'p  (p  @@7V@+Module_type䐠*!t@@@@@@7q  8q  &@@GW@(Equation吠E@@Ar ' )Br ' 9@@QX@*Constraint@@Js : <Ks : H@@ZY@@@A@Y@@@@@Pk@@@@@@_S@A@&escape};!a@E@A$kind@@m @@@Fgv [ _hv [ u@@w[@'context@@&optionL)type_expr@@@C@@@D{w v z|w v @@\@@@A@Y@@@@@u J Jw v @@@@Z@A@*map_escape~@@!a@J@@G!b@M@@H@@I@L@@@K@@L@@@N@@O@@P@y  y  @@]@@'explain@$listK!a@U@@@Q@@R@$prevZ@@@S@@T@@@Vc!b@[@@@W@@X@@Y@@Zl @@@\@@]@@^@{  }  @@^@@+unification;@@+Unification@@@ 1 L@ 1 W@@`@@@@@@@@@@ 1 1@@A@_@A@*comparison;@@*Comparison@@A X sA X }@@b@@@@@@@@@A X X@@A@a@A@.fixed_row_case;@@0Cannot_be_closed@@D  D  @@#d@/Cannot_add_tagsi&stringQ@@@_@@@`@@(E  )E  @@8e@@@A@@@@@,C  @@@@;c@A@'variant;'variety@a@A6Incompatible_types_for@@@w@@@x@@@yLI  MI  %@@\g@'No_tags@@@t@(Asttypes%label@@@q@)row_field@@@p@@r@@@s@.-@u@@@vxJ & (yJ & m@@h@/No_intersection@=@@@n@@@oL  L  @@i@)Fixed_rowV@@@k@@@j!1fixed_explanation@@@i@^!@@@l@@@mM  N  @@j@;Presence_not_guaranteed_forv@@@f@@@e@x@@@g@@@hP " $P " k@@k@(Openness@@@b@@@@c@@@dQ l nQ l @@l@@@A@@@@@@G  @@@@f@A@#obj;'variety@z@A-Missing_field @@@@@@@@@@@U  U  @@n@,Abstract_row @@@}@@~@@@V  V  3@@&o@5Self_cannot_be_closed @#@@@{@@@|'X H J(X H s@@7p@@@A@@@@@@-S  @@@@@@@@@@@@M@@t@@#map@@!a@@@!b@ @@@@@@@@@@@@@!@@"@@#@OQOu@@u@@@@vy@v@@@@9Ϡ*Errortrace0:~i0yXD(Warnings0Ef{&)Unit_info0'T Χ@aR%Types0"|Vȷ`X .Type_immediacy00$ jbv\"k&-Stdlib__Uchar0=H^V9>ɠ+Stdlib__Sys0b'8=OIn+Stdlib__Set0ܔ@Z8XWaa2+Stdlib__Seq0?72#[O+Stdlib__Map0*4ɇ2.Stdlib__Domain0'Ϳo\0m.K.Stdlib__Buffer0,I[?z&Stdlib0t0VoS%{<F:%Shape0 M``ll)Primitive0dU=\I/}$Path0k.tbGmᠠ)Parsetree0v o[pY Y+Outcometree0BuG^)= 9c )Longident0wP q;ɡ(Location0nBɊOn?7~ؠ,Identifiable0]/*N %Ident0>ЃzV)j⠠*Format_doc0uy@GmWUࠠ0CamlinternalLazy0zY# #4#-8CamlinternalFormatBasics0|.e1R$|o(Asttypes0eT$BbRM dc@@@Caml1999T037Tzkg C*Errortraceࠐ%Types%Types5typing/errortrace.mliRR@@A3@@@@@@#intA;@@#intA@@@@@&_none_@@A@A@$charB;@@$charA@@@@@ @A@&stringQ;@@&stringA@@@@@@@@%bytesC;@@%bytesA@@@@@@@@%floatD;@@%floatA@@@@@@@@$boolE;@@%falsec@@%@$trued@@+@@@A@@@@@,@A@$unitF;@@"()e@@6@@@A@@@@@7@A@ #exnG;@@@A@@@@@;@@@#effH;@@O@A@A@@@@@@D@@@,continuationI;@@Q@@P@B,continuationA@nY@@@@@@T@@@%arrayJ;@@R@A%arrayA@@@@@@_@@@ $listK;@@S@A"[]f@@l@"::g@@@T@@y@ @@A@Y@@@@@|@@@&optionL;@@V@A$Noneh@@@$Somei@@@@@A@Y@@@@@@@@)nativeintM;@@)nativeintA@@@@@@@@%int32N;@@%int32A@@@@@@@@%int64O;@@%int64A@@@@@@@@&lazy_tP;@@X@A&lazy_tA@Y@@@@@@@@ 5extension_constructorR;@@5extension_constructorA@@@@@@@@*floatarrayS;@@*floatarrayA@@@@@@@@&iarrayT;@@Y@A&iarrayA@Y@@@@@@@@ *atomic_locU;@@Z@A*atomic_locA@@@@@@@@@ .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@@A5!4!@)Not_foundZ#O@@@A&=)<)@-Out_of_memoryW#W@@@A.E1D1@.Stack_overflow^#_@@@A6M9L9@.Sys_blocked_io_#g@@@A>UATA@)Sys_error[#o@j@@AG^J]J@:Undefined_recursive_modulea#x@@w@s@u@@h@@AXo[n[@:Continuation_already_takenb#@@@A`wcvc@&Stdlib@AR@@3@@A@A+(positionATT@@;@@%First@@TT@@B@&Second@@TT@@C@@@A@@@@@T@@A@A@@#@@@@@#T@@@@@@A@@@Ű@A+%orderBUU@@;@@$Less@@U U @@E@%Equal@@UU@@F@$More@@UU@@G@@@A@@@@@U@@A@D@@#@@@@@#U@@@@@#U@@@@@@A@@@3@ic@A@-swap_positionW"W/@б@гy(positionW2W:@@ @@@ n3@UO@A@@г(position+W>,WF@@ @@@ o@@@@@ p@@ q @@@8W @@IH@@@@)print_posĠCXGKDXGT@г*Format_doc'printer*Format_docRXG`SXGj@ VXGkWXGr@@г(positionaXGWbXG_@@ @@@^3cbbccccc@F[2@A@@@$ @@@` @@@pXGG@@I@@@@ *swap_orderŠ{Ztx|Zt@б@г%orderZtZt@@ @@@a3@&N@A@@гà%orderZtZt@@ @@@b@@@@@c@@d @@@Ztt @@J@@@@A+-expanded_typeC\\@@;@@"ty@@)type_expr@@@e\\@@L@(expanded@@)type_expr@@@h\\@@M@@@A@@@@@\\@@@@K@@#\@@@Ш@г"#\\@@)3@VkB8;@@@A@@@@@@@@@A@@1@@f@,@#(("\@!@@Ш@г+,\*@@1+@@4@@i@/@@A@+@@3@@A,+@1trivial_expansionɠcFJcF[@б@г)type_expr cF^ cFg@@ @@@t3  @2ic@A@@гm-expanded_typecFkcFx@@ @@@u@@@@@v@@w @@@(cFF @)ocaml.doc o [trivial_expansion ty] creates an [expanded_type] whose expansion is also [ty]. Usually, you want [Ctype.expand_type] instead, since the expansion carries useful information; however, in certain circumstances, the error is about the expansion of the type, meaning that actually performing the expansion produces more confusing or inaccurate output. 7^8bE@@@@@@@IN@@@@@@@@@5A+$diffDOezPez@А!a@y3VUUVVVVV@J_6;@@x@A@A@G@B@@@dezzeez@@@@vO@@Aheziez@@BA@;@A#got@@E@zuezvez@@P@(expected@@(E@~ezez@@Q@@@A@Y@@@@@!@@@@#ez@@@Ш@А!a6ezez@@"@@{;@ @#ez@@@Ш@А!a"Eez @@&@@I@$@@A@?@@3@H@A@?@(map_diff͠hh@б@б@А!a@E@3@aqQ@Ahh@@А!b@E@ hh@@@@@ @@@@б@г$diffh h@А!a)$h h @@@/@@@+ @@г$diffhh@А!b19hh@@@7@@@@ @@@@@ @@E!@@@:@@ @@Jh@@@h@ C [map_diff f {expected;got}] is [{expected=f expected; got=f got}] gg@@@@@@@'R@@+@퐠@@@@@@jA++escape_kindE-k@H.k@S@А!a@343344444@4;@@@A@A@G@B@@@Bk@@Cs : H@= Scope escape related errors PjQj?@@@@@@@@@bS@@ATk@EUk@G@@@;$@A+Constructorϐ$Path!t@@@X@@hlVXilVo@@zT@$Univ␠{)type_expr@@@Y@@wmprxmp@@U@$Self@@p  p  @@V@+Module_type䐠*!t@@@Z@@q  q  &@@W@(Equation吠gF@[@@r ' )r ' 9@@X@*Constraint@@s : <c@@Y@@@A@Y@@@@@he@@W@#QQlVZlVe@F@гS$PathlVilVm@XlVnV@W@@aX@@@@Z@#VVmptmpx@N@гXYmp|W@@^X@@@@Z@#VVp  T@S@@@W@#SSq  q  @J@гU$Pathq  q  $@\q  %Z@[@@c\@@@@^@#ZZr ' +r ' 3@U@А!a_r ' 7]@@@@_@#[[s : >@Y@@@\@@A@Ԑ@@@@@@@3@@A@A+&escapeFu J Ru J X@А!a@l3@;@@k@A@A@G@B@@@+u J J,w v @@@@=Z@@A/u J O0u J Q@@@;@A$kind@@!G@m@@@o@v [ _Av [ u@@R[@'context@@U)type_expr@@@s@@@uRw v zSw v @@d\@@@A@Y@@@@@-@@@*@#$$\v [ c@@@Ш@г'+escape_kindev [ ifv [ t@А!a/Klv [ fmv [ h@@@6N @@9@@pQ@2@#..#uw v @"@@Ш@г1&option~w v ,@г56w v w v @@<g@@@Ah6@@D@@vk@:@@A@a@@3@j@Aba@*map_escapey  y  @б@б@А!a@G@3@t@Ay  y  @@А!b@G@ y  y  @@@@@ @@@@б@г&escapey  y  @А!a)$y  y  @@@/@@@+ @@г&escapey  y  @А!b19y  y  @@@7@@@@ @@@@@ @@E!@@@:@@ @@Jy  @@@y  @@]@@@@Q'explain{  {  @б@гt$list{  {  @А!a@G@3@p%@A{  {  @@@ @@@ @@б@б$prevгy&option)|  *|  @А!a"0|  1|  @@@(@@@$ @@б@А!a/*=|  >|  @@г&optionF|  G|  @А!b@G@?R|  S|  @@@ @@@F@@@P@@ @@K!@@@0@@ @@Pc|  @@г&optionk}  l}  @А!b%_r}  s}  @@@+@@@f @@@@@ @@k~|  @@@l@@ @@qo@@@{  @@^@@@@wA++unificationG@ 1 6@ 1 A@@;@@+Unification@@@ 1 L@ 1 W@@`@@@@@@@@@@ 1 1@x. Type indices     0@@@@@@@A@_@@#@@@@@@@@@@@@@@@3@?@A$'@A+*comparisonHA X ]A X g@@;@@*Comparison@@A X sA X }@@b@@@@@@@@@A X X@@A@a@@#    @ @@@ @@@@ @@3@#WQ@A @A+.fixed_row_caseIC  C  @@;@@0Cannot_be_closed@@D  D  @@ d@/Cannot_add_tagsv@@@@@@@@ E   E  @@e@@@A@@@@@C  @@@@!c@@#  D  @@@@!@#E  E  @@г$list'E  @г#&string/E  0E  @@+3.--.....@PkeI;@@@A@@@@@'@@@%@A@@@5 +@@@@-@@A@)@@354455555@@A*-@A+'variantJCG  DG  @А'variety@3JIIJJJJJ@e_;@@@A@A@G@B@@@XG  YQ l @@@@jf@@A\G  ]G  @@@;@A6Incompatible_types_for1@@@@0@@@@@̰tI  uI  %@@g@'No_tags@@@͠@(Asttypes%label@@@@)row_field@@@@@@@@@_@@@@@ J & (J & m@@h@/No_intersection@p%@@@ @@@ L  L  @@i@)Fixed_row#@@@ @@@1fixed_explanation@@@@H@@@@@@M  N  @@j@;Presence_not_guaranteed_forF@@@@@@@*@@@@@@P " $P " k@@k@(Opennessc@@@@ȠB@@@@@@Q l n@@l@@@A@@@@@@@@@@#I  I  @@г&string!I  "I  @@ְ@@@г'variant+I  @@/I  0I  @@@@@@#6J & *7J & 1@@г(position@J & 4AJ & <@@@@г $listJJ & \KJ & `@В@гǠ(AsttypesYJ & @ZJ & H@̰]J & I^J & N@@@@@@гϠаhJ & QiJ & Z@@@@@@@@mJ & ?#@@@гԠ'variantuJ & f@@+yJ & dzJ & e@@@.@@@#ְ֠L  L  @@@гؠ'variantL  @гܠ+unificationL  L  @@G@@@H@@@#ݠݰM  M  @@гߠ(positionN  N  @@Y@@г䠐.fixed_row_caseN  N  @@c@@г預N  N  @@l@@@г점'variantN  @г+unificationN  N  @@~@@@@@@#P " &P " A@@г(positionP " DP " L@@@@г&stringP " OP " U@@@@@г'variantP " d@г*comparisonP " YP " c@@ @@@@@@#Q l p Q l x@@г(position Q l { Q l @@ @@@г 'variant Q l @г *comparison Q l  Q l @@а@@@Ѱ@@@@A@@@3        @@A@A+#obj K *S   +S  @А'variety@3 1 0 0 1 1 1 1 1@;@@~@A@A@G@B@@@ ?S   @X H s@@@@ Qm@@A CS   DS  @@@;@A-Missing_field @@@ @@@@5@@@@@ `U   aU  @@ rn@,Abstract_row @@@@K@@@@@ vV   wV  3@@ o@5Self_cannot_be_closed @\@@@@@@ X H JJ@@ p@@@A@@@@@@O@@@L@#FF U   U  @2@гH(position U   U  @@Pj@@гM&string U   U  @@Ut@@@гR#obj U  P@@W U   U  @@@^V@@X@#TT V   V  @E@гV(position V  " V  *@@^@@@г[#obj V  0Y@@` V  . V  /@@@g_@@a@#]] X H L X H a@R@@г_#obj X H p@гc+unification X H d X H o@@k@@@p@@h@@A@@@3        @@A@A+2first_class_module L Z u z Z u @@;@@5Package_cannot_scrape!t@@@@@ [   [  @@ r@1Package_inclusion#doc@@@@@ \   \  @@ .s@0Package_coercion#doc@@@@@ ,]   -] @@ >t@@@A@@@@@ 0Z u u@@@@ Aq@@#44 7[   8[  @+@г6$Path C[   D[  @= G[  ;@<@@D3 F E E F F F F F@&U;@@@A@@@@@@@@@A B@@@@D@#@@ S\   T\  @7@гB*Format_doc _\   `\  @I c\  G@H@@PI@@@@K@#GG j]   k]  @>@гI*Format_doc v]   w] @P z] N@O@@W3P@@@@R@@A@N@@3 z y y z z z z z@3@AOR@A+&univarAM _  _ @@;@@,Var_mismatchB%orderC@@@@@ `- `9@@ {@$diffD@@Y )type_expr@@@@@@ư `: `M@@ |@@@ ` `O@@ }@7Quantification_mismatchE - )type_expr@@@@@@@@ aPR aP}@@ ~@@@A@@@@@ _  @@@@ z@@#?? ` `'@@#AA< `2@;@@Ш@гD%order `3 `8@@L3        @`;@@@A@@@@@@@@@A@@T@@@P@#LLA `>@@@@Ш@гO$diff `IJ@гST `? `H@@Z@@@_T@@b@@"@X@@@T@#PP aPT aPk@C@гR$list aPyM@гVW aPo aPx@@]9@@@b:W@@@@Y@@A@U@@3        @:@AVY@A+#eltFN 'c (c@А!a@3 . - - . . . . .@Q;@@@@@B@A@GG@BB@@@ Ac Bo@@@@ SD@@A Ec Fc@@ݠА'variety@ Pc Qc@@@;& @B$DiffG!a@O@@@@@H O@@@@@@ se te@@ E@'VariantH@'variety@O@@@@@h!a@O@O@@@@ f f@@ F@#ObjI}'variety@O@@@@@!a@O@O@ @@@  g g+@@ G@&EscapeJ!a@O@@@@@ O@@@@@@ h,. h,Q@@ H@7Function_label_mismatchK^)arg_label@@@@@@@@ iRT iR@@ I@4Tuple_label_mismatchL T @@@@@@ @@@"@@ j j@@ J@3Incompatible_fieldsM$nameN@@ @@@# k k@@ +K@$diffO@@ؠ .)type_expr@@@&@@@( +k ,k@@ =L@@!a@1O@+@@,@@@/ >k ?k@@ PM@2First_class_modulePS@@@2@,!a@9O@3@@4@@@7 [l  \l?@@ mN@&UnivarQ@@@:@@ im@B jm@T@@ {O@)Rec_occurR |)type_expr@@@; )type_expr@@@<@^!a@CO@=@@>@@@A oL@@ P@@@A@_@@@@@@S@@@P@#>> e e@%@г@$diff e e@АBGv e e@@@Ny@@@гD#elt e?@А!aK e e@@@M e e@@@W eM@@O@#KK f f@.@гM'variant f f@АOT f f@@@[@@@гQ#elt fH@АRW f f@@А'varietyW f f@@@e fW@@Y@#UU g g@8@гW#obj g g@АY^Ѱ g  g@@@e԰@@@г[#elt g(R@А\a g g@@А'varietya g g&@@@o ga@@c@#__ !h,0 "h,6@F@гa&escape +h,< ,h,B@Аch 1h,9 2h,;@@@o@@@гe#elt ;h,N`@А!al Ah,G Bh,I@@@n Fh,K Gh,L@@@x Ih,Fn@@p@#ll NiRV OiRm@^@гn$diff XiRh@гr(Asttypes biRq ciRy@y fiRz giR@@@8@@@9 z@@@@|@#xx oj pj@g@гz$diff yjq@г~&option j j@г&string j j@@[@@@\ @@@]@@@@@# k k@U@# k@@@Ш@г&string k k@@t@@@@$w@@# k@@@Ш@г$diff k@г k k@@@@@@@@@)@@@г#elt k@А k k@@@ k k@@@ k@@@# l  l@@г2first_class_module l l1@@@@@г#elt l<@А° l6 l8@@@ǰ l9 l:@@@ʰ l5@@@#m@Dm@J@@г&univar m@N@@۰@@@@@#oo@@гoo@@@@г#o$o@@@@@г#elt-o@А2o3o@@@7o8o@@@:o@@@@A@@@387788888@ @A@A+!tSOFqGq@А!a@3MLLMMMMM@ 0;@@נ@@@B@A@@@@@@@@֠GG@BB@@@mqnq@@@@W@@Aqqrq@@ А'variety@+|q}q@@ @;3 @B@A g@P@۠P@@@@@@@_@@@@@@*@@@'@@Aг$listq0@г#eltqq@А!a [qq@@А'variety$bqq@@@.eq@@@4gJ@@L@@3@g@AML@A+%traceTPs s@А'variety@3@~R;@@@A@A@@@@@@G@B@@@ss0@@@@X@@Ass @@ ~@; @AiA)type_expr@@@-Q@@@@@@@@@@@@@@Aг!ts/@гs s@@=@@А'varietyBs%s-@@@'Es1@@3@@3@F@A43@A+%errorUQt1? t1D@А'variety@03&%%&&&&&@]mD;@@/@A@A@@N@@@O@.G@B@@@>t11?t1b@@@@PY@@ABt16Ct1>@@ @; @AA @@@1,R@2@@@5@@@@@@@@@@Aг!t\t1a@г-expanded_typedt1Het1U@@=@@А'varietyBlt1Wmt1_@@@'Eot1G1@@3@@3mllmmmmm@F@A43@#mapVzvdh{vdk@б@б@А!a@nR@^3@_oF@Avdovdq@@А!b@pR@_ vduvdw@@@@@` @@a@@б@г`!tvdvd@А!a)$vd}vd@@А'variety@rR@b0vdvd@@@; @@@e8vd|@@г!tvdvd@А!b?Gvdvd@@А'variety#Nvdvd@@@L*@@@hVvd@@@)@@i @@j\$@@@Q@@k @@lavdn!@@@vdd$@@Z@@&@@h3incompatible_fieldsWxx@б$nameгȠ&stringyy@@ @@@s3@!@A@@б#gotг)type_expryy@@ @@@t@@б(expectedг,)type_expr)y*y@@ @@@u$@@г#elt6y7y@гC)type_expr@yAy@@ @@@v;@@@@@w@KyLy@@@ @@@zHSy@@6-@@{ @@|NYy#@@MD@@} @@~T_y)@@f]@@ @@Zey/@@@hx2@@y[@@4@@a*swap_traceXs{ t{@б@г8!t~{({)@А!a@R@3@%@A{{@@А'variety@R@{{&@@@# @@@{"@@гb!t{<{=@А!a*%{.{0@@А'variety#,{2{:@@@7*@@@4{-@@@)@@ @@:$@@@{@@\@@ @@@*ocaml.text  The traces (['variety t]) are the core error types. However, we bundle them up into three "top-level" error types, which are used elsewhere: [unification_error], [equality_error], and [moregen_error]. In the case of [equality_error], this has to bundle in extra information; in general, it distinguishes the three types of errors and allows us to distinguish traces that are being built (or processed) from those that are complete and have become the final error. These error types have the invariants that their traces are nonempty; we ensure that through three smart constructors with matching names. }??@@@@@@3@Sn@AA+1unification_errorYR@@;@@%traceZ@@֠ g@@@@@@@@ ^@@@@@@@@@@'unboxed@@ @@@@]@@#!!@@@Ш@г$%error @г(+unification !@@03@HB;@@@@@@@@@*'@@@A@@@9/@@<@@@3@@@@.+*@'@@S21@A+.equality_error[S89$@@;@@%trace\@@( ~@@@@@@İJ/3K/L@@\`@%subst]@@Š@c)type_expr@@@Ǡ@j)type_expr@@@@@@@@˰gMQhMu@@ya@@@@@@@@@klMw@@@@}_@@#33)s/8@(@@Ш@г6%error|/F}/K@г;*comparison/;/E@@C3@V;@@@@@@@@@"@@@@A@@@M @@P@@ @G@#CC-MV@,@@Ш@гF$listMq6@В@гJKMZMc@@Q#@@@гMNMfMo@@T-@@@`.@@@e/MYP@@i@@3@T@@@@P@@3@2@AQP@A+-moregen_error^Ty~y@@;@@%trace_@@ @@@@@@yy@@c@@@@@@@@yyy@'unboxedyy@@y @@@@b@@#  y@@@Ш@г#%errory@г'*comparisonyy@@/3@zB;@@@@@@@@@+(@@@A@@@9 /@@<@@ @3@@@@/,+@(@@3        @ @A43@1unification_error`@б%traceг%error$%@г +unification./@@ @@@730//00000@3tn@A@@@ @@@9 @@г\1unification_errorBC@@ @@@:@@/@@;@@<M @@@P@@ad@@@@ .equality_errora[ \@б%traceгI%errorh.i3@г *comparisonr#s-@@ @@@=3tssttttt@Ef+@A@@@ @@@? @@б%substг$listUY@В@г)type_expr>G@@ @@@@&@@@г)type_exprJS@@ @@@A5@@@@@ @@B< @@@1 @@@DA=/@@г.equality_error]k@@ @@@EO@@H@@F@@GT7 @@pW@@H @@IZ@@@@@e@@@@a-moregen_errorbmqm~@б%traceгΠ%errormm@г **comparisonmm@@ @@@J3@+@A@@@ @@@L @@гF-moregen_error m m@@ @@@M@@/@@N@@Om @@@mm@@*f@@@@ A+0comparison_errorcU%& @@;@@.Equality_errord@@@P@@4 5 1@@Fh@-Moregen_errore@@@Q@@B24C2U@@Ti@@@A@@@@@F@ E Wraps up the two different kinds of [comparison] errors in one type ST@@@@@@@@@eg@@#..[ \ @'@г0.equality_errore #1@@73cbbccccc@lRH;@@@A@@@@@&$@@@A7@@@@9@#55p26q2C@.@г7-moregen_errorz2H8@@>9@@@@;@@A@7SP65@55@@@5@5@@3@ @ACF@6swap_unification_errorf@б@г1unification_error@@ @@@[3@;|@A@@гŠ1unification_error@@ @@@\@@@@@]@@^ @@@ @ * Lift [swap_trace] to [unification_error] WWW@@@@@@@j@@@@@@@@@3'SubtyperV@v@@БA+#eltgW@А!a@`3@XmD;@@_@A@A@G@B@@@@@@@k@@A@@@;@A$Diffhɠ#X@a@@@c@@@@*l@@@A@Y@@@@@@@A@#"#@ @г$diff,*@А!a:23@@@#=2@@@@@@A@4@@321122222@=@A54@A+!tiX@A@А!a@r3GFFGGGGG@TdE;@@q@A@A@@@@@@pG@B@@@_ `!@@@@qm@@Acd@@@; @AAܠ+Y@s@@@u@@@wY@@@@@@@@@@Aг$list}@г#elt@А!aA@@@"D @@@'E0@@2@@3@E@A32@h  Just as outside [Subtype], we split traces, completed traces, and complete errors. However, in a minor asymmetry, the name [Subtype.error_trace] corresponds to the outside [error] type, and [Subtype.error] corresponds to the outside [*_error] types (e.g., [unification_error]). This [error] type has the invariant that the subtype trace is nonempty; note that no such invariant is imposed on the unification trace. #%@@@@@@3@Yi@@AA+%tracejY@@;@@0Ay)type_expr@@@@@@@@@@ @@@@n@@@Aг!t  @г @@3@.(;@@@A0@@@@@@@@@@@@A @@@* @@!@@:! @A++error_tracekZ  @@;@@iAH@@@@@@@@@@  1@@@@o@@@Aг!t 0 @г-expanded_type " /@@3@hb\);@@@A1@@@@@@@@!@@@@A@@@+ !@@#@@3@ @A$#@A+7unification_error_tracel["3:#3Q@@;@@A@@@@@@@@@@03513e@ 4 To avoid shadowing >3f?3@@@@@@@@@Pp@@@Aг%errorH3`@г +unificationP3TQ3_@@(3ONNOOOOO@Jrl7;@@@A?@@@@@@@@/,@@@A@@@9 /@@174/.@..@@@.@.@@3hgghhhhh@@A=<@@+%errorm\vw@@;@@%tracen@@@@@@@r@1unification_traceo@@r@@@@@@@@s@@@@@@@@@@@@@q@@#""@@@Ш@г%+error_trace@@-3@Y@A@@2@@@.@#** @@@Ш@г-%error)@г1+unification@@9@@@>4@@A@@ @8@@@@4@@ 43@%errorp@б%traceг+error_trace @@ @@@73@<vp@A@@б1unification_traceгҠ7unification_error_trace-D@@ @@@8@@г%errorHM@@ @@@9 @@@@:@@;%  @@7.@@< @@=+@@@@@&t@@@@2#mapq OU!OX@б@б@А!a@K]@>3+**+++++@I`@A1O\2O^@@А!b@M]@? <Ob=Od@@@@@@ @@A@@б@г !tLOlMOm@А!a)$SOiTOk@@@/@@@C+ @@г!!taOtbOu@А!b19hOqiOs@@@7@@@E@ @@@@@F @@GE!@@@:@@H @@IJyO[@@@|OQ@@u@@@@Q@yA@GA@A@A@keA@@@z@s@@3@bu@A3@@Avy@@@@@@A@A@i@b3@,@A@@^>A@@WA@~A@ @/@'!A@A@A@|]A@  xA@  A@ = 7A@  qA@GA@A@A@U@g@` @A@A@A@@@@A@R)@@Q@L@@@3@ @A@A@B* Scope escape related errors  w The type_expr argument of [Univ] is always a [Tunivar _], we keep a [type_expr] to track renaming in {!Printtyp} cndo @/* Type indices ( Common lH  mH  @- Unification rK n psK n @4 Equality & Moregen xO  yO  !@= Always [Second] for Moregen ~Q l Q l @( Common T  T  @- Unification W 4 6W 4 G@( Common dd@ < Unification & Moregen; included in Equality for simplicity nUWnU@ * The traces (['variety t]) are the core error types. However, we bundle them up into three "top-level" error types, which are used elsewhere: [unification_error], [equality_error], and [moregen_error]. In the case of [equality_error], this has to bundle in extra information; in general, it distinguishes the three types of errors and allows us to distinguish traces that are being built (or processed) from those that are complete and have become the final error. These error types have the invariants that their traces are nonempty; we ensure that through three smart constructors with matching names. à F* Wraps up the two different kinds of [comparison] errors in one type L +* Lift [swap_trace] to [unification_error] ݠ * Just as outside [Subtype], we split traces, completed traces, and complete errors. However, in a minor asymmetry, the name [Subtype.error_trace] corresponds to the outside [error] type, and [Subtype.error] corresponds to the outside [*_error] types (e.g., [unification_error]). This [error] type has the invariant that the subtype trace is nonempty; note that no such invariant is imposed on the unification trace. 5* To avoid shadowing j@-./boot/ocamlc)-nostdlib"-I&./boot*-use-prims2runtime/primitives"-g0-strict-sequence*-principal(-absname"-w8+a-4-9-40-41-42-44-45-48+-warn-error"+a*-bin-annot/-strict-formats"-I&typing"-I%utils"-I'parsing"-I&typing"-I(bytecomp"-I,file_formats"-I&lambda"-I*middle_end"-I2middle_end/closure"-I2middle_end/flambda"-I=middle_end/flambda/base_types"-I'asmcomp"-I&driver"-I(toplevel"-I%tools"-I'runtime"-I1otherlibs/dynlink"-I-otherlibs/str"-I4otherlibs/systhreads"-I.otherlibs/unix"-I8otherlibs/runtime_events"-c ?/home/ci/builds/workspace/main/flambda/false/label/ocaml-alpine >10/.-,+*)('&%$#"! @@0Vգ41А^g3@@@(Asttypes0eT$BbRM dc8CamlinternalFormatBasics0|.e1R$|o0CamlinternalLazy0zY# #4#-!0:~i0yXD*Format_doc0uy@GmWUࠠ%Ident0>ЃzV)j⠠,Identifiable0]/*N (Location0nBɊOn?7~ؠ)Longident0wP q;ɡ+Outcometree0BuG^)= 9c )Parsetree0v o[pY Y$Path0k.tbGmᠠ)Primitive0dU=\I/}%Shape0 M``ll&Stdlib0t0VoS%{<F:.Stdlib__Buffer0,I[?z.Stdlib__Domain0'Ϳo\0m.K.Stdlib__Either0HD ?|>.Stdlib__Format00FClW/Stdlib__Hashtbl0(L%bԠ,Stdlib__Lazy0$1mlࠠ.Stdlib__Lexing0^m|e+Stdlib__Map0*4ɇ2ɠ.Type_immediacy00$ jbv\"k&0"|Vȷ`X )Unit_info0'T Χ@aR(Warnings0Ef{&@0:~i0yXDAf/t9@Kh@    װz@ _@ H f% @% 8!4@j@@@c7@^    'ٓ-@@tΒ@WE@@tM@r@@E2@-i x@ w  ԰    ԰- G R@@@@  i~k@@Ò@%/@@  2SI@&N@@ ӓ T$K@Jq@ٕð-@T8@@͕@ΒO@@  @w^|@o\@4@@ ) @\L E   xe@/ @Ӱɓ@Ɛ)i~@L4@@O>ĐU@@@ؕ@;9y@@j@J^@ٓ@N@ o  t"D.\@o@@P@@