ref: f3109e1faf8de6f98c308aabba79e8db0c0876dd
dir: /test/abi/005_main.myr/
/* seed = 1591521986 */ use std use "005_types" use "005_in-myr" use "005_in-c" const main = { /* myr calling myr */ var a_1_1 : t2 = [.field_1=0.0625,.field_2=(112,-0.625,110,44)] var a_1_2 : uint32 = 2189228706 var a_1_3 : t4 = [.field_1=[.field_1=-0.84375,.field_2=(150,0.359375,172,26)],.field_2=[.field_1=241023379308544,.field_2=115,.field_3=(228,0.65625,247,84)],.field_3=[.field_1=3134223810560,.field_2=102,.field_3=(128,-1.21875,232,105)]] var a_1_4 : t2 = [.field_1=-1.203125,.field_2=(110,0.6875,119,200)] var a_1_5 : (t5,uint8,t6) = ([.field_1=94503966736384,.field_2=2770153426,.field_3=187,.field_4=214,.field_5=213410253897728],164,`E_6_2) var a_1_6 : flt32 = 1.53125 var a_1_7 : flt64 = 1.3984375 var a_1_8 : (t4,t3,flt32,t6) = ([.field_1=[.field_1=0.578125,.field_2=(170,1.09375,193,148)],.field_2=[.field_1=271021012025344,.field_2=173,.field_3=(241,1.46875,80,71)],.field_3=[.field_1=86092233441280,.field_2=245,.field_3=(3,-1.125,183,168)]],[.field_1=110146554691584,.field_2=246,.field_3=(164,0.8125,164,89)],0.28125,`E_6_1) var ret_1 : ((uint8,flt32,uint8,uint8),t3) = fn_1_myr(a_1_1, a_1_2, a_1_3, a_1_4, a_1_5, a_1_6, a_1_7, a_1_8) if !(((ret_1.0.0==192) && (ret_1.0.1==-1.296875) && (ret_1.0.2==50) && (ret_1.0.3==129)) && ((ret_1.1.field_1==188458318561280) && (ret_1.1.field_2==40) && ((ret_1.1.field_3.0==47) && (ret_1.1.field_3.1==0.359375) && (ret_1.1.field_3.2==32) && (ret_1.1.field_3.3==127)))) std.put("myr_to_myr 1 failed\n") std.exit(1) ;; var a_2_1 : (flt64,t10,(t2,uint64,flt64)) = (2.7734375,[.field_1=258260610842624,.field_2=([.field_1=67688764407808,.field_2=122501974,.field_3=122,.field_4=53,.field_5=46816349519872],175,`E_6_7),.field_3=((242,-0.828125,64,212),[.field_1=175981577109504,.field_2=146,.field_3=(58,-1.3125,81,249)])],([.field_1=-0.671875,.field_2=(39,1.3125,255,168)],5680861020160,3.1015625)) var a_2_2 : (flt32,(flt64,uint32,uint64,t4)) = (-0.65625,(-3.07421875,2364459620,34004063092736,[.field_1=[.field_1=0.734375,.field_2=(31,-0.46875,207,112)],.field_2=[.field_1=91868031090688,.field_2=24,.field_3=(152,-0.796875,24,64)],.field_3=[.field_1=74808418369536,.field_2=254,.field_3=(6,0.046875,73,208)]])) var a_2_3 : (t5,uint8,t6) = ([.field_1=145965008551936,.field_2=2498931774,.field_3=156,.field_4=179,.field_5=265737065725952],244,`E_6_5) var a_2_4 : flt32 = -0.796875 var a_2_5 : t15 = `E_15_4 var a_2_6 : (flt32,(flt64,uint32,uint64,t4)) = (0.6875,(-2.171875,1533036440,12142327889920,[.field_1=[.field_1=-0.5625,.field_2=(243,-0.65625,106,51)],.field_2=[.field_1=156078303608832,.field_2=104,.field_3=(58,-1.34375,178,10)],.field_3=[.field_1=140200370896896,.field_2=33,.field_3=(143,-1.3125,190,67)]])) var a_2_7 : uint8 = 179 var ret_2 : (t16,flt32) = fn_2_myr(a_2_1, a_2_2, a_2_3, a_2_4, a_2_5, a_2_6, a_2_7) if !(((ret_2.0.field_1==101589888270336) && ((ret_2.0.field_2.0==225) && (ret_2.0.field_2.1==-0.046875) && (ret_2.0.field_2.2==234) && (ret_2.0.field_2.3==74)) && (ret_2.0.field_3==200069064425472) && (ret_2.0.field_4==1.53125)) && (ret_2.1==1.53125)) std.put("myr_to_myr 2 failed\n") std.exit(1) ;; var a_3_1 : t15 = `E_15_5 var a_3_2 : t23 = [.field_1=(([.field_1=208514472345600,.field_2=(171,0.53125,170,148),.field_3=137775610724352,.field_4=0.046875],-0.109375),([.field_1=[.field_1=-0.515625,.field_2=(130,0.5625,65,249)],.field_2=[.field_1=49920772014080,.field_2=137,.field_3=(81,-1.078125,187,244)],.field_3=[.field_1=238917205884928,.field_2=234,.field_3=(148,-0.65625,148,82)]],[.field_1=13348047552512,.field_2=206,.field_3=(236,-0.390625,159,22)],-1.203125,`E_6_3),3263768112,[.field_1=[.field_1=0.890625,.field_2=(223,-0.78125,76,85)],.field_2=[.field_1=165112780685312,.field_2=206,.field_3=(4,1.078125,200,49)],.field_3=[.field_1=107450067189760,.field_2=25,.field_3=(89,-1.203125,14,51)]]),.field_2=`E_19_1,.field_3=178689565917184,.field_4=`E_20_4,.field_5=`E_21_6,.field_6=(269113953746944,2315358406)] var a_3_3 : t21 = `E_21_9 var a_3_4 : uint8 = 248 var a_3_5 : uint8 = 86 var a_3_6 : (uint64,t24,t25,(uint64,uint64,uint8)) = (85770339090432,[.field_1=-0.671875],[.field_1=-1.15234375,.field_2=`E_20_1,.field_3=`E_21_1,.field_4=(0.46875,[.field_1=3865086263296,.field_2=([.field_1=62745143410688,.field_2=444241798,.field_3=148,.field_4=38,.field_5=186451756843008],253,`E_6_6),.field_3=((106,0.875,169,132),[.field_1=193552010969088,.field_2=134,.field_3=(209,0.390625,6,157)])],([.field_1=-1.015625,.field_2=(122,1.40625,38,208)],55544454578176,-2.609375))],(33366908207104,136001504280576,132)) var ret_3 : uint32 = fn_3_myr(a_3_1, a_3_2, a_3_3, a_3_4, a_3_5, a_3_6) if !(ret_3==2527618668) std.put("myr_to_myr 3 failed\n") std.exit(1) ;; var a_4_1 : ((t23,flt32,t6,flt64),(uint8,uint32)) = (([.field_1=(([.field_1=44445459546112,.field_2=(83,-0.453125,82,113),.field_3=235939541549056,.field_4=1.078125],0.3125),([.field_1=[.field_1=-0.234375,.field_2=(236,0.828125,60,26)],.field_2=[.field_1=143671663132672,.field_2=50,.field_3=(243,-0.796875,3,53)],.field_3=[.field_1=214366877515776,.field_2=126,.field_3=(252,1.453125,128,149)]],[.field_1=223779870998528,.field_2=137,.field_3=(203,0.953125,12,243)],1.453125,`E_6_3),1314332054,[.field_1=[.field_1=-0.671875,.field_2=(209,-1.125,32,106)],.field_2=[.field_1=160715212455936,.field_2=12,.field_3=(45,0.96875,39,176)],.field_3=[.field_1=2142336450560,.field_2=26,.field_3=(239,-1.5,80,178)]]),.field_2=`E_19_5,.field_3=84526311014400,.field_4=`E_20_6,.field_5=`E_21_1,.field_6=(248535774265344,1964811016)],0.1875,`E_6_5,-1.87109375),(155,2693759888)) var ret_4 : uint64 = fn_4_myr(a_4_1) if !(ret_4==276275068796928) std.put("myr_to_myr 4 failed\n") std.exit(1) ;; var a_5_1 : (t31,t32) = (`E_31_3,`E_32_5) var a_5_2 : (t32,uint8) = (`E_32_5,66) var a_5_3 : (t35,uint8) = (`E_35_4,214) var a_5_4 : t37 = `E_37_1 var a_5_5 : uint64 = 210077727850496 var ret_5 : flt64 = fn_5_myr(a_5_1, a_5_2, a_5_3, a_5_4, a_5_5) if !(ret_5==-2.5234375) std.put("myr_to_myr 5 failed\n") std.exit(1) ;; var a_6_1 : t40 = [.field_1=([.field_1=[.field_1=0.71875,.field_2=(162,-1.375,12,208)],.field_2=[.field_1=208257259929600,.field_2=224,.field_3=(202,-0.015625,86,251)],.field_3=[.field_1=253976550440960,.field_2=123,.field_3=(146,0.828125,120,62)]],[.field_1=26298971062272,.field_2=103,.field_3=(239,1.28125,152,89)],0.734375,`E_6_3),.field_2=`E_6_1,.field_3=`E_38_6,.field_4=[.field_1=(152549047009280,[.field_1=0.859375],[.field_1=-3.7109375,.field_2=`E_20_7,.field_3=`E_21_5,.field_4=(1.26171875,[.field_1=257906686427136,.field_2=([.field_1=154973503488000,.field_2=2040012194,.field_3=167,.field_4=109,.field_5=74787062284288],39,`E_6_6),.field_3=((63,-1.390625,63,209),[.field_1=230983872282624,.field_2=184,.field_3=(15,1.296875,31,255)])],([.field_1=1.015625,.field_2=(183,-0.484375,142,16)],137163913822208,-2.80859375))],(170983975682048,72796805398528,42)),.field_2=1990287632,.field_3=(194,3552591666),.field_4=([.field_1=[.field_1=-0.375,.field_2=(79,-0.625,9,188)],.field_2=[.field_1=159828972142592,.field_2=48,.field_3=(128,1.0,62,192)],.field_3=[.field_1=179052505464832,.field_2=16,.field_3=(120,0.625,250,151)]],[.field_1=196274257788928,.field_2=205,.field_3=(79,-1.4375,91,96)],0.09375,`E_6_4),.field_5=1.515625],.field_5=2.265625] var a_6_2 : t41 = `E_41_5 var a_6_3 : (t32,uint8) = (`E_32_8,203) var a_6_4 : t42 = [.field_1=-1.58984375,.field_2=217,.field_3=3500137676,.field_4=101686982737920] var a_6_5 : flt64 = 0.10546875 var a_6_6 : flt64 = 3.21875 var a_6_7 : uint64 = 40133181046784 var a_6_8 : uint64 = 71741835313152 var a_6_9 : (uint64,uint64,uint8) = (221313136459776,104460582912,149) var ret_6 : t43 = fn_6_myr(a_6_1, a_6_2, a_6_3, a_6_4, a_6_5, a_6_6, a_6_7, a_6_8, a_6_9) if !(ret_6==`E_43_1) std.put("myr_to_myr 6 failed\n") std.exit(1) ;; var a_7_1 : t48 = [.field_1=[.field_1=6386332991488,.field_2=-3.90625,.field_3=163,.field_4=155193554763776,.field_5=(`E_35_3,18)],.field_2=([.field_1=112229799297024,.field_2=-2.8984375,.field_3=216,.field_4=44483204612096,.field_5=(`E_35_2,195)],39665754832896,114,776337414),.field_3=`E_46_5,.field_4=146729052536832,.field_5=(((153,1.234375,43,174),[.field_1=26828980748288,.field_2=242,.field_3=(236,-1.078125,180,30)]),266092824363008),.field_6=(13831859994624,[.field_1=0.390625],[.field_1=0.0703125,.field_2=`E_20_1,.field_3=`E_21_6,.field_4=(-2.765625,[.field_1=175411747749888,.field_2=([.field_1=262729443049472,.field_2=932333724,.field_3=5,.field_4=16,.field_5=17637135220736],46,`E_6_2),.field_3=((211,-0.5625,171,1),[.field_1=12764915826688,.field_2=49,.field_3=(154,1.375,93,73)])],([.field_1=-1.46875,.field_2=(79,-0.90625,49,4)],93216219463680,-2.83203125))],(18454498639872,269237052506112,165))] var ret_7 : uint32 = fn_7_myr(a_7_1) if !(ret_7==2499773006) std.put("myr_to_myr 7 failed\n") std.exit(1) ;; var a_8_1 : (uint8,flt32,uint8,uint8) = (200,0.25,18,246) var a_8_2 : (flt32,t44,flt64,t49) = (-0.734375,[.field_1=8592161505280,.field_2=2.32421875,.field_3=77,.field_4=95804356820992,.field_5=(`E_35_1,126)],-1.12109375,`E_49_3) var a_8_3 : t51 = `E_51_3 var a_8_4 : flt32 = 0.1875 var a_8_5 : t52 = [.field_1=-0.81640625] var a_8_6 : uint32 = 441584498 var a_8_7 : t53 = [.field_1=198] var a_8_8 : uint8 = 89 var ret_8 : flt32 = fn_8_myr(a_8_1, a_8_2, a_8_3, a_8_4, a_8_5, a_8_6, a_8_7, a_8_8) if !(ret_8==1.421875) std.put("myr_to_myr 8 failed\n") std.exit(1) ;; var a_9_1 : t51 = `E_51_8 var a_9_2 : flt32 = -0.796875 var a_9_3 : flt32 = -0.71875 var a_9_4 : (t54,uint8,t55) = (`E_54_7,255,[.field_1=[.field_1=(130105287114752,[.field_1=-1.0],[.field_1=3.53125,.field_2=`E_20_2,.field_3=`E_21_1,.field_4=(-0.67578125,[.field_1=23617654620160,.field_2=([.field_1=12594182750208,.field_2=2889081194,.field_3=84,.field_4=84,.field_5=265251503210496],17,`E_6_7),.field_3=((141,-0.1875,10,118),[.field_1=24302215233536,.field_2=170,.field_3=(64,0.953125,156,112)])],([.field_1=0.3125,.field_2=(168,0.3125,140,197)],149682231705600,0.3828125))],(66190105247744,201243456045056,128)),.field_2=1608787508,.field_3=(208,3925244758),.field_4=([.field_1=[.field_1=-0.125,.field_2=(219,0.265625,201,48)],.field_2=[.field_1=148885215510528,.field_2=219,.field_3=(41,-1.3125,75,52)],.field_3=[.field_1=153670362464256,.field_2=97,.field_3=(222,0.9375,47,122)]],[.field_1=66828912033792,.field_2=201,.field_3=(35,1.046875,86,233)],-0.421875,`E_6_7),.field_5=-1.109375],.field_2=350527626,.field_3=98,.field_4=([.field_1=146849136115712,.field_2=3845172994,.field_3=76,.field_4=250,.field_5=212141542211584],227,`E_6_6)]) var a_9_5 : t58 = [.field_1=`E_57_1,.field_2=[.field_1=77],.field_3=-2.5] var a_9_6 : (t59,flt32,(flt64,flt32,uint64,uint64)) = (`E_59_2,-0.984375,(-1.09375,-1.53125,20793480314880,36073398206464)) var a_9_7 : t65 = [.field_1=(-2.32421875,208),.field_2=[.field_1=-0.0625,.field_2=(((224,-0.984375,131,218),[.field_1=209069555974144,.field_2=100,.field_3=(82,1.4375,89,16)]),273030717767680),.field_3=[.field_1=(([.field_1=62938097254400,.field_2=(107,0.609375,97,70),.field_3=77561457147904,.field_4=1.265625],-1.515625),([.field_1=[.field_1=-0.828125,.field_2=(174,1.390625,142,121)],.field_2=[.field_1=266278944636928,.field_2=1,.field_3=(57,-0.1875,53,10)],.field_3=[.field_1=258630503497728,.field_2=22,.field_3=(58,-0.203125,241,248)]],[.field_1=232005730828288,.field_2=67,.field_3=(237,-1.03125,83,229)],-0.328125,`E_6_6),2541087240,[.field_1=[.field_1=0.875,.field_2=(4,1.15625,173,8)],.field_2=[.field_1=29310895783936,.field_2=92,.field_3=(250,0.515625,214,236)],.field_3=[.field_1=188538419019776,.field_2=16,.field_3=(92,1.1875,26,72)]]),.field_2=`E_19_9,.field_3=93123907813376,.field_4=`E_20_6,.field_5=`E_21_9,.field_6=(84919533043712,2312961846)],.field_4=738749758],.field_3=[.field_1=(`E_59_2,0.671875,(-0.01953125,-1.171875,30820079632384,68216701976576)),.field_2=`E_21_7,.field_3=227,.field_4=`E_31_2]] var a_9_8 : t66 = `E_66_3 var a_9_9 : t67 = `E_67_3 var a_9_10 : flt64 = 2.06640625 var ret_9 : uint64 = fn_9_myr(a_9_1, a_9_2, a_9_3, a_9_4, a_9_5, a_9_6, a_9_7, a_9_8, a_9_9, a_9_10) if !(ret_9==6316575686656) std.put("myr_to_myr 9 failed\n") std.exit(1) ;; var a_10_1 : t74 = [.field_1=(1.21875,-0.890625,`E_54_5,-1.140625),.field_2=[.field_1=-2.86328125,.field_2=[.field_1=272734424006656,.field_2=(168,-0.3125,7,96),.field_3=194650230882304,.field_4=1.3125],.field_3=2832640246,.field_4=248902425116672,.field_5=3177491204,.field_6=`E_20_7],.field_3=[.field_1=((242,1.0,118,202),[.field_1=130511054045184,.field_2=60,.field_3=(149,1.25,209,211)]),.field_2=65],.field_4=`E_71_4,.field_5=`E_72_7,.field_6=(1065245434,0.359375,(182449277763584,2003708228))] var a_10_2 : flt32 = 0.890625 var a_10_3 : t75 = `E_75_4 var a_10_4 : uint8 = 73 var a_10_5 : (uint64,t44,t76,t77) = (100724679639040,[.field_1=197606249070592,.field_2=0.3515625,.field_3=45,.field_4=111205168709632,.field_5=(`E_35_6,168)],[.field_1=[.field_1=[.field_1=(273706513334272,[.field_1=0.625],[.field_1=3.27734375,.field_2=`E_20_4,.field_3=`E_21_5,.field_4=(1.125,[.field_1=228193040859136,.field_2=([.field_1=197736696643584,.field_2=2597012506,.field_3=181,.field_4=213,.field_5=107853796474880],110,`E_6_2),.field_3=((122,1.296875,218,48),[.field_1=13448229421056,.field_2=244,.field_3=(47,1.453125,167,113)])],([.field_1=-0.5625,.field_2=(91,1.53125,127,192)],208774694567936,-2.68359375))],(203837156753408,124751440248832,19)),.field_2=949240352,.field_3=(233,3093393614),.field_4=([.field_1=[.field_1=-1.46875,.field_2=(157,-0.546875,189,115)],.field_2=[.field_1=199305275375616,.field_2=43,.field_3=(171,-0.984375,22,134)],.field_3=[.field_1=105055744950272,.field_2=34,.field_3=(122,0.1875,25,33)]],[.field_1=1198625914880,.field_2=107,.field_3=(125,1.546875,235,61)],0.734375,`E_6_1),.field_5=1.453125],.field_2=763193548,.field_3=39,.field_4=([.field_1=52338931924992,.field_2=391110206,.field_3=223,.field_4=55,.field_5=198983641202688],50,`E_6_7)],.field_2=673599174],[.field_1=[.field_1=[.field_1=(254957327745024,[.field_1=-1.171875],[.field_1=2.5546875,.field_2=`E_20_1,.field_3=`E_21_2,.field_4=(-1.171875,[.field_1=130672052011008,.field_2=([.field_1=97871770550272,.field_2=3555186718,.field_3=6,.field_4=114,.field_5=270228958085120],7,`E_6_7),.field_3=((114,-1.5,200,176),[.field_1=212862159159296,.field_2=220,.field_3=(167,1.359375,3,215)])],([.field_1=-1.484375,.field_2=(226,-1.390625,187,21)],4365063815168,3.0390625))],(278530325086209,40351778734080,183)),.field_2=345942008,.field_3=(91,281298906),.field_4=([.field_1=[.field_1=0.140625,.field_2=(180,1.234375,145,38)],.field_2=[.field_1=240181903360000,.field_2=153,.field_3=(4,-0.625,158,204)],.field_3=[.field_1=279255610818561,.field_2=96,.field_3=(169,0.46875,79,172)]],[.field_1=137219642097664,.field_2=85,.field_3=(143,0.140625,17,164)],0.1875,`E_6_7),.field_5=0.421875],.field_2=3026647616,.field_3=171,.field_4=([.field_1=200920828215296,.field_2=266056950,.field_3=188,.field_4=66,.field_5=215864985649152],161,`E_6_6)],.field_2=234,.field_3=-0.12890625,.field_4=109,.field_5=[.field_1=((238,0.890625,11,187),[.field_1=218973062561792,.field_2=108,.field_3=(100,-0.234375,187,17)]),.field_2=233],.field_6=296769572]) var a_10_6 : t79 = `E_79_2 var ret_10 : flt32 = fn_10_myr(a_10_1, a_10_2, a_10_3, a_10_4, a_10_5, a_10_6) if !(ret_10==-1.515625) std.put("myr_to_myr 10 failed\n") std.exit(1) ;; /* myr calling c */ ret_1 = fn_1_c(a_1_1, a_1_2, a_1_3, a_1_4, a_1_5, a_1_6, a_1_7, a_1_8) if !(((ret_1.0.0==192) && (ret_1.0.1==-1.296875) && (ret_1.0.2==50) && (ret_1.0.3==129)) && ((ret_1.1.field_1==188458318561280) && (ret_1.1.field_2==40) && ((ret_1.1.field_3.0==47) && (ret_1.1.field_3.1==0.359375) && (ret_1.1.field_3.2==32) && (ret_1.1.field_3.3==127)))) std.put("myr_to_c 1 failed\n") std.exit(1) ;; ret_2 = fn_2_c(a_2_1, a_2_2, a_2_3, a_2_4, a_2_5, a_2_6, a_2_7) if !(((ret_2.0.field_1==101589888270336) && ((ret_2.0.field_2.0==225) && (ret_2.0.field_2.1==-0.046875) && (ret_2.0.field_2.2==234) && (ret_2.0.field_2.3==74)) && (ret_2.0.field_3==200069064425472) && (ret_2.0.field_4==1.53125)) && (ret_2.1==1.53125)) std.put("myr_to_c 2 failed\n") std.exit(1) ;; ret_3 = fn_3_c(a_3_1, a_3_2, a_3_3, a_3_4, a_3_5, a_3_6) if !(ret_3==2527618668) std.put("myr_to_c 3 failed\n") std.exit(1) ;; ret_4 = fn_4_c(a_4_1) if !(ret_4==276275068796928) std.put("myr_to_c 4 failed\n") std.exit(1) ;; ret_5 = fn_5_c(a_5_1, a_5_2, a_5_3, a_5_4, a_5_5) if !(ret_5==-2.5234375) std.put("myr_to_c 5 failed\n") std.exit(1) ;; ret_6 = fn_6_c(a_6_1, a_6_2, a_6_3, a_6_4, a_6_5, a_6_6, a_6_7, a_6_8, a_6_9) if !(ret_6==`E_43_1) std.put("myr_to_c 6 failed\n") std.exit(1) ;; ret_7 = fn_7_c(a_7_1) if !(ret_7==2499773006) std.put("myr_to_c 7 failed\n") std.exit(1) ;; ret_8 = fn_8_c(a_8_1, a_8_2, a_8_3, a_8_4, a_8_5, a_8_6, a_8_7, a_8_8) if !(ret_8==1.421875) std.put("myr_to_c 8 failed\n") std.exit(1) ;; ret_9 = fn_9_c(a_9_1, a_9_2, a_9_3, a_9_4, a_9_5, a_9_6, a_9_7, a_9_8, a_9_9, a_9_10) if !(ret_9==6316575686656) std.put("myr_to_c 9 failed\n") std.exit(1) ;; ret_10 = fn_10_c(a_10_1, a_10_2, a_10_3, a_10_4, a_10_5, a_10_6) if !(ret_10==-1.515625) std.put("myr_to_c 10 failed\n") std.exit(1) ;; /* c calling myr */ if check_c_to_myr_fns() != 0 std.put("c_to_myr failed\n") std.exit(1) ;; std.exit(0) }