From 41f6910fbf4e102cb35e2d8aef97e10c6309104f Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Thu, 7 Jan 2021 17:03:35 -0600 Subject: [PATCH] small bug fixes with polymorphic array lengths --- bin/onyx | Bin 313072 -> 313072 bytes bin/test | 11 ++++++++++- onyx.exe | Bin 396288 -> 396288 bytes src/onyxclone.c | 1 + src/onyxutils.c | 8 ++++++++ tests/polymorphic_array_lengths | 20 ++++++++++++++++++++ tests/polymorphic_array_lengths.onyx | 23 +++++++++++++++++++++++ 7 files changed, 62 insertions(+), 1 deletion(-) create mode 100644 tests/polymorphic_array_lengths create mode 100644 tests/polymorphic_array_lengths.onyx diff --git a/bin/onyx b/bin/onyx index a62f136fbe4fdfd9e010430cbb4114a9d35adabb..f1c5173cb19698e24dafb5f29bc347237d5ed0f2 100755 GIT binary patch delta 56226 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�V|Iy#{3@iN#_mb!sab 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

3A$%vWQDCFs#LqL<}%6e0bU_ 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 b>%)aBO?adIVzm9Z8EOKItH|6hzQg_xfOF)k diff --git a/bin/test b/bin/test index d327cc40..e5408703 100755 --- a/bin/test +++ b/bin/test @@ -1,12 +1,21 @@ #!/bin/sh +print_check() { + if [ ! -z "$TERM " ]; then + printf "%-$((($(tput cols) - 8)))s" "⏲ Checking $1.onyx" ; + else + printf "%s ... " "⏲ Checking $1.onyx" ; + fi +} + + failed=0 for test_file in $(find tests/ -name '*.onyx'); do filename=$(basename -- "$test_file") dirname="$(dirname -- "$test_file")" name="${filename%.*}" - printf "%-$((($(tput cols) - 8)))s" "⏲ Checking $name.onyx" + print_check "$name" if ! ./bin/onyx "$test_file" -o "./tests/$name.wasm" >/dev/null; then print "\n❌ Failed to compile $name.onyx.\n" diff --git a/onyx.exe b/onyx.exe index fd15f1d2b55c8bbf19c6af23bce4e3f59509ccc1..4a501d357c1dec782e5208537e99526be82a9bf3 100644 GIT binary patch delta 38680 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

p`2e1GDT6WB%3d6 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 T4X*d`#ha{s>8=6=^3;C;)1VtP delta 38638 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%0A>h43 zhla2%fk%5Yspudko$iH`Pam9efcwLH*#_U22Qq0=43nDmW6}dqZCV)1KGYxEA1Av3 zOnQs32*RD9`e5xoj7hmenFRl$^aK z+fB2Fu{HMB;8ivG2S~Hq;iRiym%tVBD zdwoKVm;soocJ9)1c-y~#E`j!fPJr%#(m_4rnY0C=4xt6;bv!kQV;x&4h?@o)2pR*5 zMcP=<6woZt0??Agcu@}@V0rr+RjY+^_PoZrIEShzqqLW!42+x?w=<6feHJKe`p)@j) z)#UkW$uOCfqdSRg0&78?r(o5*F>IWIskIHSt1kSN2nuvH$zd96#Xr6@^qGcyc3x|c zSPg4;WD$L;sgq$FZYa6zoAJwX?P3T^hIz&sQlAtQ``EA}h1Fp^ax;bPg)GJ!+-AXE zW0BNrHnvNnVdrdCMYi|suFc!W)#|)u8@~L(?#s-b?xexUYfe>&^(%TTuQ#8XC!pmnYnT;_BcC;l*h@OF2D7k=KCfXn<-UqGUgyLl!o*yQ zSt~|W*TIT-MltI!YU^m%I<|?+o`#<5v0~XK;u~2jjA`4A?2TiMQtA|SMo^%8zd@EN zWmEKKR?IML6HAfVRw~%a+Omd*wi(Qf@wLmSYbN%^?UbC!jPl7DYUSpt1W99P**3O; z^(Osx)|8vaQRZ9bLff{pJ@SQVDx-(mO3TsOBGIngAb@#jJFK(0DpN7a$zt{{xud}J z>v`a%%48EYO{~=7WV!>p&s1{W!K$$V)N%*Jvo-D6!Rq7iR{*kbB`80XCdL&{;HDBn_<9JZY$(5)QkOAj(V z2DFBDA7j(ld#ZDswd8UIQjW9uqP0wfWZ{e}&T&HB$B@qnoHCZtkQ3NNx{yUK=DGrP z&Sj&SCE?D<&o1@5jOw*@U!dzmRwr2~M77>YY;?9;zlubgs|X5o+i1xtc#pE^^C{K{ z8*ly7Y@da-zp4N|3>Ih5x=F9DG3g_y0AzL@8Wpq@->X5}L7PC?pgo`yptGRMpj)87 zK~F#_pfr#Z@=6G;#5brE$RAV@R1?$y6b0%C>IE8njoGM~;s7RtG^gRYKcNktlIL0W zRG4XhVP|S@sQ(vi8254gwV}tsLoCNV(U?l%X3(soKPmPcbGMyZ$mC&^JAN;q?%uHK zGtV(kx6&d3Lg|lO814w~Fnwa2J-k3T?i8oz=U79Ft6u8p#2RXy$EZfljzNyZoKU!2 z2j6Cr_Z@6epgZ_J26_%k068Hp1Ysx8kFYA@7$^gABF_?pdOCK29W+nq3q$n5TAFzg zO6I2F^+iZA%ccpJnXgS!=O3#JFKuY<9ae%)UWVvTrO+!-8}T&q3TwiPbfKeHphDp- zxWcm7C|Z7%4TPLnUt|7UdTXe1jU8ujhkUyZAIVcgi5tv>c|Pi9A{{;R+kfczdBh42 zQpQo~r}xzr}neRr-zH=O=rZ|Bo}Z!|(aH z%3^&A??n8Q!XbgC#x6oY;`Gu8Tq~H~5GXke{}YFQZ}sr+tqGgy!JnMPz?lg|(YKki zW94A2i^1rkx7x+Ylzf|2t$U-1+NXMjWvc#wWShz=jMNJkY^Ey4MfFKe=%cAiA>)s> zTXi9mJ1o>Pw=<;8b)h7QmEfw_yI2|e-+|U*jmayIwc~FV(zrY}Fwn;b4B5kSpeOA(MXnWCbbw%2vO~N&y^8ufj#9-s9 zAgs0|Q|k`&$9-0Yy`ug1S!`s|b0(!eW73PKu#ylufz~5#9Kz+G-Jm1D=MmL2+J?dbsoy{BAx~{x2p+Qi+|Wt@N7E=Y z@i^6a#3Iedw?dEpnr)c;Dz=X~m?-0xv{$Tr&4-cNRD~IPRa0f|vWO7=r(~N`;uEr#Eo4m-Gy|f3 z2-zm;{|ftA-V{3ciupT~FHFi6;*WYu(T7)TxI9d6LZ02ZGuKTtOn=R~if#7c8#b0T zq3&-nV9zPzElb1oM1yziyxB9{GZ@3j?LBLPvwr{gjNEEOpj|>Es9vF$KOA7Hj>w== zA6S}M6b{SA(zN#j3ulk%>j%_wggSj>tyvdC=11Iin0bYRqYIt;gw3!nxqikW{R~z6 z3=4H4b^FY^n?;0yf#~>WwvgFS^cNU(A1Lh$oR0PDAY}m^`@%@KzBayVjKy#yK-yr* zy;?^8#$Mwm`@ibh@ArJpD$B3x`Fk+x_^F;>lA9HGt##>Vq|n621%l50u{^@^|6Lx9 zWUYT;=wE=^zXdeXidU`u(p~LPhaY*hwbDq1nr{AOy;LgX`mtt8(-SLR2?lGaB0R~W zxAB|$g2j+ggujRN8;Fu2*J1x7>0!nq<>{ymZvuauy)E})>kL(F`72g`WR7a{%|cM1 zbFMGW0F|;KoYyqr>@#OwaV|}A=F$`wF4ZW(rEB9Kz(_1%M;J^oZ&PM7&P&&u} zS_irS$^%^o9U-5hyt75}JvG-7N-D~8*daqRN8XCD0fv=MybELhq!r^?I8yB>#!EYo zIe=a!!^wqra~8>_{Q(QIlT3Tii(-5V&Iu!m^Qy49Hy7vrEQT%@=e5{OgQGL=glFP3 zqy+yHmUt}}9?2TebQj*qw&h-R)P^G{&~-7qbm6!HKW*S8Q5y55>26qZd+3212Ku7G zsub_Tu#AVg^B~vE9ik;E>cLxU%reA?#-thcx$}P*&J8O(c~^EI&5OsdOVrPc2XJ!> zA}^lJ+EDw_ygn`NazF#2Rtw)FVA|Uo%UB8lz>!6!xsJRT_4MZ6{cW~uQ;eWM zw>wyy;(V@7vjvvF`Y0eKm`k(%Lk@vlO2Ccp-=NMOT*@!UrKSN~$^f?rxgKQSLE_W(J65Q)0~=><(?=% zwk-Fu_S&q)M;WCLw5%*I#WLwYSzfMGZefOKaYrr?22CscVvI zdUun^ud7*DOsugFRV~N8a0(Em_~fg}c#DBX8m&Y@8_@22y%=<{DWa?#TRK>lyE>z= z{aRrs3p1&^W;Wd}$NhOI0-|9QgavaS zZeEzMq%a}Y2p@hhX7hlhnxj}BHK9;+PQLu#DSKyzA`7Q19o_hK%ATzi)oE&@Kv&wk zaLT$@z?7Y)MHMh*C4XaCRQk6m>-1aV1Tt2@l(hlRFM^9}?TVPPgKM;^RB3JVqHxNd zidamUI?$N1l9s>;IlF&OS#?ZV4KAIji77+a0Q3qp2{;sV)G)UqFVC<{vnz40a-YTK zm^@yb4PNdMN9s4LcSAU($M-c6t-D%OCsf)?+-mVqKXVb0q_@|&W@=oYSN-5x;37-7 zcZj0k5MCM<(45NL1)i!+mAPw?Wk0zB)UrH#iin?O9Y?iT6m5TUT`ECkLwFg!a3RgD z%uBf0{>q-;3%n*jd52MQ2rtX4YOE}W&WG@C>;nB&h1X#BsYq2cBawWo@+e$6jjoEw z>RMzzovq44`NK4_uF6ZWRR+j)h`Ghi9jdgBH*~ARpD~_kL(Rf@CAWQ_zNs5~=>Kf& zp~fIu7S5Zp^Yk01V>PPX>8+m&K*rX`n>Q)a9;l#bx@x#z+b*rP!kK|4SP zLAjs{pj)7Hy54}F#)i74A#V(G{Z&Kmj_u7s&xhDFsfbHhTQS99#&}BA^TxKV7pYAi zgrGpzmmccTD@&>z$-UVW>JZ86+df~Ya=cg|I9AZ+NZyRSrZ15kcSF>;5rT@exDl_X zn-1-cd1|*<<&Q;BpzCOO(}=HTOlMfogimL1*LpPL8St&0YsPP2yWiBD4}(Jy8zOS* z)6|^Z5ftcLO~ml&6UXB+UR-T)ji;B!GePC~Ky6#_Q~Z_(d9~zQAm-;<@-cAKHfn|D zPoyEOV6-)&Rjv3Y_~)9phGJPr<3*4{8(L$3nM-F{Lr9{@tqsQy-wci0@HI?~SzE}A zJq5PorHUkAGKJELGQxq|4#h8}bM3fCk@#6!e3)@1eQC$5!95?+o|i2(UzGvDU+HAw zGX6tECI0)XJ(|;=*X8~1QG7HnNiW-TQ&yGUx99b^e2;2$z=ngTFCFmnuQV#&k=JGQ z3>`c2g$%~c+fF=P+*@_#EpTD=s57r3uCBZAWqAE{pbPIHarsAE^YPq;?A0Yy-U zZu}^VBDZMX9oN{CqPdrC@_8X*Dc)iWGuEbzXo$&k`YRfn_X~O+&4a<{-ks<2ch~62 zKwgT>dvLwZMhA6at-kOO50%wjXAJe~fklu=Gkc(n(zLM$4mm3*peOGOQ*d5SUKzI= zCwub7)o`UG!J8L~d{8vnvu!;No?${LRp%bwZ3--Gk{Mu@@Onn@QPW=7E@se>Ufcs7 zwK)jvamRvDjq{L3=mbwZW%oiW;^|>8-oZvq#1*CJVLUbI%>%6^@JEU#3Ol^#&{V`! zeLYc3VT!j%F*ZFQlq1Rkc)Sh5_86|npE18x^tdd|QcP3}CzS`0fPWt4}^y(#dBHMo4QH?QPJ4|!>b1!Ptj|ZBFsaJ+R)6txM+{XGhLD2>Cb)nONqMl=Kx&8fcFmz)il+k zF=GC0EXE3bQ}hWJ`UahSDV{wi#yP8Mr<%sv3p`+*pt9oPVgN6Pd!5$qH10-h2k~6o)?OXNJ$dD`^m!0(86EeC z|NF?W#%N76v$56Vu!AJgvUE{SvfkM^V&Bgvf!dX##uxHy5#xU=!sQWd9*o+W=h9z; zxd(50l3oqwI$q@rSq$OcO~M93{4u-jalj5ZgUWF_Sg%%BI3VI@q)Da@B1tt7?0R8! zXc-DQlT6>7mL+3@T@*Kjmvc_a5wZhoLZ5^O)`d4ZsWy{o-w^1SEV?lSTg^!FkL7+i zA4kRV72I_xy@}=RmKD80v$6JbAfIt`48h`CcPN` zYoreRVoktdXkiTAua1=36ZP^nTg~|DK9?SMgC2u@treW{TN&q(E*dRF7c*B~7`?x` zOT{`DC1KYZJKS2UT@~~56fm5}b7>H59nOcMV;&=T7!No|Jx1`TQvI=>@FdW^37QwW z*FtTTy4LX?cJNU;H-fig@5p~7Wc&>^8p$i-@^QjQn41RLHIn~n6 zi?=>NH%9Tc^1z&L^z;cUf%}7|qxmd0lx~gY^-aoU;xZ-5pSx069Lzu*s^hQ*aFrOx z%M_9Ni&l##C|l`J9IWuh`?UFr!+a?#DmkW&;eOn7AC(z{z2FUX9K&5L)*VpW--No1 z;m)||1WzfQM?X=LO?LzZy8N4B8RdJc9IlP`YGpY3Gg@uISE}h79I$cs zphkVzjQ%$F=fx>@9Cx%_cnFmz;vJ7xRr)w=x@G^Q2jj47z9!f4d<@s0qO|dRO8J(f zRSPh75oTRHau(v_ftBWA+_A&r>L zBe}bQ4$bB>oYrjow|%e=u#W0&q)v0NY3`!wb6~vY(DgaIHq^iKTwW4~m5{kS%xUz7 z|K`$dprpC5hm&dhTs}k|w_X-6eM=Sb(5I$&hhc9tW>V8XcxT>o9Bul8hjaS{^!yJP z@#Scqf|H)dQaY>fdL~<};HUAN$IDojk5*UujE&T49&gVFjiD{`kk2KJUe4o(c)vK> zHXpdye0n>dSMVsUp1^;3*Q#x|QKIT~8BjMv@4<}8Si-HSXBzLrn~$c`X&CjdWJ5fg zHy%ZQ5#UF1Sb&2{t&wzl0gr$q*=r%+$-_s`^@T`%Zg5@1%^98=lwJ&TeHHat%#Y(f zJ#Y!oLPP8lp3JygEPY!F=2KK>8BexW-fFL`J&Y!^>B=%*-uupSF4?T*(*1NaZWSDa ztGQHS4Q6+vMt#;7&X~ARr0UDLBkt;(Er;878*N_BeI{LuQ1$o}9Bc}74|i&tXc#>0 z_INCeSN=BN!Chq#qlqO&gWn0QP)Op(Mka;8g_NaF@ZnH(uRaZ7P7rcxy7$ zajK~gzEwY{*aUvP+NP*<-k68aqNVA47_T**99Hm>o*Aj4HFJ0TVjJzQr?zvxnlhT2 zt>7ghN2;LRuWXYwwoYnFEu@In;bKG_3b5T~P5WN(*hxLfm{tW3b_zY(Lz(q>H(i&O zV&Brv-vcw%^S3_J;2pu|anEWQTnYm<0<{Kp1;v1dfyRTv==y5DPd3(*l}BTICuKC# zioy{-cbnK=atrQZ7&fDI`R(zsPJA@S$4c?h03S=mM=g9T5FeHCp@@%i_?RU=yzr4E zK1$$Yiuka{$0YF~{Crze)Xq2`ozorldG*IX!$IRgQ$e#p1WE^O0Bzq!UDv`OgQ2mO zZw+&JfZm!G!M_U=@7u{o67%fJ9f8SGHrez&?5bZP)ra2Y@LW9E<`z=K!|^233p8LI z53s!4L|tXMJ1Bh}Uj^+Dv7Wd|f z&?op!pl0j6r*)g*b8OLr{@e^l5_Xi$yoqJ*1R=ffH`DViaNBm=!gVZ_Vz=<>yyXPi zyoFce#V61sgm?$*xs_LUSTSD9k*5_~F@*+h#dgzcJT2M^o%fKQZ{;p-xrNPnDVno2 zQOhD>1!KKs2o^v4(S@=0S}b0rWpF=-u)#xh{0s*BZ!jTW}qKSmXa z#-$XU$%{D-t^*CA*|;g{^H}3*O3LJ;COzwl#$Yi9>rHoyeE9nhd&OXBQQ{IzM6LT7 zm6)v;5p8Gv;7QEJI?grL{~2MrpfD2`N=7S39a(U_fWlJEz#qznCT`;{+$4z>ZQ~w6 zJw^$AhBG<(t^2eYD-=d?u<;8l!k^I(e?~u`$J_Y6BKm%6neB176pzFWr?&IqjAc;m z9ee=v_r@J?9~R6I5@|POvf4D^)WC71QBr~UEry;}T*70AqC0UCb4j4eJMmY7K8(k3 zsqMf?PZC0tJVSKLXp0U&w97%MUi`m!tR_?CUA!jtouRvURUR>(Htxcou6Ro&47i`0 zLxT*wovZ)2|D%TH^M?&0HP+j#-1ir#{tKsTLy5AbBia;?;^RGhP@p?&xO<4poR@7v4-WH|;<57)K8rVOOec=OUH91_ zALR^>yA7r}_$db5!8MLyK&Bevjv?CqP2e~6*Q@~-q2Hz?SWwb&{=#SL1ul7ls)GiC zT7edTPJt$a@<1>g8p8dx?*#4#kCIC+KZhe!el8AFiR5w;*M&1F@g%RwYjvl?C;0=5 z50D&8aVUA_au+&r3T{1KkE~CljXMqc)4UD0b9Ynw6^fuh$7j&yKlxbOJ0;b~4+si$ zW2o|33}~milz5gaunda-rCJ6Z|Ke%92@aQ+poHws@gR1V>YPK;IGTKpPv)Tm$?QBI z&1TcY^EmF*>|i)@9#$83uR$*^z?K?t;-{mRP+QSz^z{;A z4^i#Q{4IVUQt1jxo=&5#@Tok!4}H6Wl5wAY6(!eiW!Q6-+b~|NH|1XA0|TAktDBqp zdkDA;gpz>oO@ziR9n|^7nk|eNZ|HuV_hejOiH_gExO^dglb_`^E7FCVsQ)oJ-Qq`i zNCmon3-CU<-UcimOnJ8fZ<5y?K))b*bO-PfmAQ+&y7KhtF5nTWk%v^I&( zAoBn+zYn;BBJcA#+_4GWyw82?dRd4OhyPDBvRfG0{SA+09~%8PpUX|klGOt=%|Hzv z@D1Fp480QY90mTvca`k-_}9+PQ5P#7=m;Ht$58N(xC&1vcx^r+e_Q;~INqx+Ei&R> z_8d@tUevbF` zq;*eu4NI5W-wNPLjWeZ5;U-;3|BOEp_q)#_@^cJ>o^zS;fl)N<1s}bpXBo4(?&JxB%Sl<>+n!KgoO9%-<-7bBD4!pUDY~53Xg1leZohbH0YWs%KO`! z0$%dI6l^K`YQu*g1%z@>b9!bbcZKcU#9V&Nu2K~XxtX}Ow~*`d5HC7uA)jNzX_2Me z4KK;5sk!V&URH7hUXJ#)lH(v2c~xDwA6k^5s2RI`@r;xWZ|YxxGwSnX_3N>4Xh zY$NYv`>BPkT%Y$TNegV{^-uxfcHkXDQ|x5I+rEr+ z+~q61b&$jHj;=~kc^`NELT`!!=2D2GoQ2)xv7&ns?ot!Se z`S6v3N-`Z)C?;27^9?b@r>e9jzvbSwjXjT{+*$4`B_vv&AvZckUJ25Wa^IoXH!!TG-!|&&GnFX z$;Y04rF*yG2@en>)LyPr-ubC@sd9Z$tex!V@}sgqb12S*&8s_jE;ND z$1tubK7i#->6{Nz=g}Bnz;F{f;EPn~e?P#gGM(^4>QajJm+M+L;#i-oT&w6Y>_iI4P8Mfoi6aD#SM66qi4V5r&bRXKw<#7~2(qGhkhIux+QWjYWF z2nAnF9*JKn#8s1%x#cA?t&Z3%YE&Ieju+{RfCnh72B6yodQ}4ueXR-Tcb*>A1cYO? zmb`-poTK}-0I!f=ZKPKDi>}oML|^LwhMlFebpW4`V;EqgKPe{+@GV(}%fq3(Cxpub zxc3=)5{}rj6jT>XaT8VicL>d^X*R=+BTG}7+$<~*JC}l zy-(})@>a20BLSoD(XvQD2yY|6{&_U75#TAR*I2HPKm3r?SYBW;?)}#SIOeVCUZ_bi zs?$Uc5&Lly@YlUV`irP|1L;tyW5!9q--p>5FkXXMcqXc6^nEAN0~+qoUOvYfiM1Nuyk z?SWQPhxR}PWZMB~1GVmeNjBL*RvppGt<=0Dpk)@Bb^?UFbON;9p4J&?H`VV9hV0KOpG zzJQI^Qchn$%t8!c^EGrR1`r!lKfuUJ3Op1UVR?*J>7<4(CzVw%~c-NJbIY3O( zA$mUmxaSJmG!WS4AiWw09FtCK2LTs7Ku-q&4_Zzu1_Kx0PmcyeO=F)M0tqPzTYU)N zXiAF(^xR9gV*$t0+@XNJd+6FwK&ZN5faP}6#bJQcX!>x#U;~{U4hX$C0x)D3og4u; z2bU9o)pt_PNI>kAqX6sdphKeo7t!$1fDu`=cQoK~8XN~0xt(^#0j{QgV*s0Nqs%dY z*hIzxw#uYUV*$5Pw{d{&GidENz%1%G98%%YHq@)Emp zgT*pT@%HeAZ7^#!tym>H(wm9$B+-;f$PlrK_D+&#@Ukfs5swTh1GNlcBEzJWS_YmV zj}!KD0y0$FK*ti0!F?t*pNtF+1GEg$BEyJuErU&>JVp#uA~FQy?*t?wL$MjuehM-y z=%;0f7a0aD(=rsBiW;C-ry_&T8oE9e8H!A!p3{)QCPvGUE;2+f(K2{WmnZPS(d)>=L?b89hYC&hxa4KC|T}_}SI4+30iq#fCkzp)Bmairo$q7A839 z4~-L#XwvbFKY1=V0~XSSx$+ykI$br!Xu-H>j>h=t4-|QwDl2GnqG7Be+cUepoi)aI z!FYL=#<+PN8tpWOKF`A=Lfkq>_sWhoRVR`W6p zlxGUvUWS2s+fri*6D+e6wW41yN6|PZrlVJJhN)K+`2#U)#%SIL&Mdgut2q%06Zw*DZi9(e!o;U=CH=3h3UAUTg(CNtH7Iy}Qzr z3_xuEnSf=w&_9`gI0|nAEZ>>(wgJK#*bZ2!6W!bnc$+-307E;{l`KFUNp}F&>Okjr z0K)j$30Sv1o!JTalpJ;eHf%>Hb^*c`G5|JdOGgZV@5y{OV2d_%U^gI4qdkCaThs16 zSgg`e`o0HByi+U6+6!zNOP}@vN4KP{`+%*6(A#~$y<5BWBF{!z600I<^_ zdU61GNOM|#5V*uZ`sW~2<_KDN2(wyh0OcJ597FT60ZaF%o7sR9Y4%}2|9*7kFd)uy zM*st3==>2toJx)YR_se>jsoIDngdw151q&X{Da0F1FYGbjvNCd8g(2nycZof4u}`n zCjcAtq}?X~SJ1#*z{Wi&D;IDr^*sp~)t$DU1l&YDP64)wrVXb6GpWmIz>eK$^=Uu| z<{7|lU1|9lz`fM!PrzPXXwjd5a6z2~?AMv*p9RdJ$iDywccM9e0iL9YbC5OsfuM7c zJgkNDKyftnJkUj|egS9##a{rrMj;o0Ceyf!KsZug0)h|Z63~4rcNqxQ&1IlR?BLh2@< zX+^TU1(-q2ZUI_VAd}mG@Lb#mvXnsFGmmW1HvotH(+2{y7xEWRq}lRSg{PycM12*=iqmKdKk;N0h zsM7Fj0DdMpAFz!V?a2o$pzi{9^rRh6A+{#9>GM;FaW@ajcm`})i{3p0?&VG!p99<0 zq?gZu`<0?KFMu6uQ2qFOImY&vfN1FF!4w}8`W+B?7sA@t`vz!XY&4_Ku#<-P};OXEKP)~G~BKLEnt z@ewerA|3n)h@I{eVEqcT=M!K$4f+h&D42G923$iiUjUm2QN|a*jnwliVC(X<@he~k zb^Qj|A&}O51KdF!z5{j*p!Dy6I58Fg_ACeQ1>nK?%}wg_n6mTJOtLWXjTq3NGBg)| z6&@2`pPSSdCtg_8nD;OlXf#cef#4oB0UD40!vG+-A54MZKQINlMHS3|rqO6KpnDWx z4urF{InYD$vjBoe*#an^yexs{Q;a2$__YoY%zY~$nEOS5VD1+Ig1K)E1asdS2IJ;()OCodIjSql?afu=h&-XXy8zaILnmDTVeh*FHhN7tu7I%j zO9D23MTbfP!rpfSZ2gkhrX284y+4d`h`x4i*j z@B0Ayn$k5NK-l}ffaOf+qAwuKSU4B>Rr9}wnA8Nlj{a>@Y0-Y;uX zU#^4c%PwoOU0B)WkQ`A!d&?mi27drxQSPf_< z4XMl#&ddO18p0d=Ymn=o~mZiphWT`=4 zSqjIirJ8sYRTVF-Dh`mPz=5*lKS-8J50<4;Lu9E$tSmVVl_k4jvSfwVXQp`CCXJM( zFQE6MWa$+i@Lj`&&(kFNHDl9Gh~U9G+LW1OWSbOy?3@O9mBKc3yLh=oi9rb@wD4|ku05G zjDnZSlCoTu+OI%|R>_hJ9zYbwk0@@fm!<0)Wog-FSz5eRmZCFJc^5psYM&)bt^QwK zX98c-(f|Ls=gdS>NhFd;V#`HrvBj>|P%5>?-dfWZMbX$5l@w1=+D4JY_TUb#}?llx5bw4ZSmC) zwpe$<7OPI$V%d+jSbEA9i%;9)gEO{B|H&5f&f4Owb2dx=Z87a4^ibKTbyD` zi0=z+aa2fgkm>JxnclvWf^aL_OMI=QSkI0XtBXmooV8+^0aE<)DJd2emtsMn6!U|m zm>n!r#f%bCyb&VBWJ#C4XQk=XWeQJyc(cZyQLli+Rr58cDIKu@qTNq*%lD zQ7f1L{b@5PmNb__w~*p}R^GnDLfttmfYp(K@YAqkRhIuBmk?CfcvR_*{#QyY9fetz5s;qB( zB#Zl*-uk|m^s=_{J=0)p$8Gb!7}HL=?0+68(B4Y8i}^_U2QbOSOx*8zQLlbh{uJt6 zTi}ctN?w&tuWNnv2kqq)mKlU3@&sBYiE@P%y-(jsBv?m0b)S>$&qYnM16TR5c91Lh zT2$+Z=|erFqr7Qqu$?5G&OhrVo#aaMeeNvVFbQf-XStK{%=TR{QAO<{zbNtf$ELt3 z8dIu$LML>UWg}*>LcbZp<%Np7_w)=fkJ$$%7BufWnA{I=Y8E9bCg_m$}H;v6oE`Imtcr@{=3K z`EJ~l>D>4o!17m@Uer_ev&wAMw|e3m&9Yu{AeEqZd&#!JQ*zDN^ZeLc#+$v5bZ#&C z1qJk+-mYeTRyNlZ`Ql}NLD@lpda^oxsk`O3|Fmi-;eA0LRKIpPGJ ze)#ilQGQfy6DX2^KUKUXh$Np>oe|C8~)#H_YX z;F-YeZ(f4Qd9BatM=!}Y*_|`>WzuJ}1A6bva)aqw9*nWwe!X?D{KTZ*Atv?i(@TcP zxxrl-?j-u>&ob(oqU#Tp6|MH?bf2N}D0}-=eucEmpwBBZ%4Mp~!?^S5J$m0TxyG~! zhs!qhbGr-lgSz$*U1o$VS8VX<0@Jmv7o4*qedB!Rzmretv=LI7n)nFrZ; znE{xQvW;xLv!GBf_>n29Cr8Rx&6j=@o-(jCio%0-+-OXU|BsfnUDnV~^vc&{Yb$KK z=jv;+w`E@PnX$5x)hI^~8!P)*o&TwKkCm-WyJVc4&IIHc<7AZ*C(ImTXFiFUGqy;3 z#>pO*wO9v^$0=>J@p6}`%uc|kwVrMh28+EZ3UE@;b&w8}z}~(uqmL~tO>d)6_-=tznZ^sOI)QXv>Z_L0*$H`3jQShV` z6XEk?ll;hw@9VQOWwNPH&GOZ!X31;D^M4r6m+Q^{;ALp+zlE{mGX2$Ca$42O>@4T4 z_F(}lBYY*5<=d^W^J`8*>M+6nkrW8}atvuuK z+ftmH$44n$im8|vBOBk>kLSpXAssfFoHCy6L(NGU%{S_sbLAvDMn}9&QPMlpv+`|O z%(80b=neB_Y?c)%TBb{FM%U8`d+cKUQ@T86y*y2? zSwOK<>LcfFuP*T(e)_*J-w2pJ)#piye(ePrk+H3Nkj{EvmaNv4n4>&f`G0wo&kQ*- zaF%}Ou`Hw0Lm2R9W1>EKbcPHxokSUU-%fkBX2<}`>M&V<`vIBco`>yNLtOz4*{0r% zd%oduYdPB$u>7Xa{D;o^P`0-sCg=wr%7*6S@R9t$N*u5Ee}r1dVvFTY%l})?p2f0` zWtADDZ!N(dXCKQM!B;!^5^TEBH>(^zmfM2rbi{66&@?`;-h2A3Ph{huu+ENE6Jzz2 zK5VQ`nLFnN-Cly#YdUzT9BtY@OUbA$=IPx_$;KOXzf6pS-quSqxxlyoGr83Ae^vW^&KuK%`MKO|1&>&?3=<5q>C`j0Q*H)6`r zBQ{d{-Ri5m9hZ^%o)^7*>`DGgmT;L7@~^qS{Y35gn)?|5-GniDg6ES>vX{$>?xXK) zCePE2<>3*Pdh4qmjPzS=!C0%8zOaQd>(m(C`Gy>--`OgQ2XS_kiLU`Oh_BOn`Bqsc zD6pPmRl!&-(HD%>>AH^9Z*O9i>?yZRc5zu_dg-K-GRo@HOOH4yTRGEHbk26Etj68- zsqHA?qK@7nwbj3y-nfGgNWf@)XNUaK*Wrpea+Lo48!B`3CG8|Z#EsM^c9K45{O-co z=~caP7gtFx*(SM+&`Y!BN^4&yVn19D*o{``p4lyro6gQXa*&lUOz+$yx0wEfy-yA|a}W0M+{Q!nfqm3{=sMbuvHxKG*?s~+>3o1# zovu?4$W^>Z^@Et`uRKVCX*FIK9+a;*U9jBJ<3+vZ5FfM8^s9$4c1_mn56hSR4fDZ5%do9JyPi2`=$cyyB2ov8JXguPNvefCF`K_A>H*~UMy zhf{8C(XD@#Vfxr9+5mJmoW^0l?)vl7)JJyeu4gd5+D&JiA+GTAC!f}S@@eg?Pitr8 zV#}|d_CH6WU?}<=86~=|zGIC0b>n|ytQoI=`8UQhI`(HWYGfUK?`QJl7ajGOTw-kc zd18^)LoN|Zxt~i``c=nWAWp|U=X0^~0&z;;@h|wul$>8kccp6R`@ir^a>K6#ph=wm z@mGv=LtVtjj@9+vix{c7|0Wmmgs6Fmoh zmys^3c4eLG#StSNmx-JvvHHi$7#Z5QLQJ-+qz_%eNQc%{Vsc`+C9}mq$aVbqLifJT!-~b|VmG*(*-bYvhL+cljB&fCO&(y4_S19z zlz)_;-GomKA1rE;f6XlY(5ajr^cGLj88@j2u(0{2Y+^NTt?%8G4J~&=UHg{ICKcYe zB^!io?P#9h%07@q*H{%J^tJmk#g*w9@W3?l z{_v#a^IbEag#y{xs#nKzq(HKV?*@JCp^UQ{)zDFoWMir^NsnZslKbNxIAt%6~n*|&VQyB59KI~F0*rQelFz93kR4vufvf2me15$OeE?3sP;P{LO z!%OL#MZHqg7mRVm*#&+l^FiTW}$_m6z1!F-WD>1i-$mGXS-rt+*U#z{n%e!v)aVzYXNGEDYc$bJpwwqeW@W=cPXiuSN@brs#iWti3aQ~-vq=~ z3_~P*2Dk*tK{g{-knY&$h3W3a)y9xvUSCK)s>Ds$tL?8QZpm%0`-;P#dCsM7n5~IM^ zIdNbu+xo|86{6}ldK>FFyftWKd6Db}jhrnKs%^4U#KS^eH%wJ# z%r!1d)ugAsPnc?C8uMZ5B_Q!rCsLm@zB6=}Qw}@0x*6bU)TeONSHLzqsA$xX_ZHJZE%;F-`JySYN&x%yf zge*Vji@0S~oQO-)ry|uG)|~6koz|dG{aTcYwt5zsYlLzxg^INzd}apWE<~wT%y_I2 zt)e0`LhvWc_|s%wf;5NixT#{k<6QI`%*D%-_3>yG!7c@k`*^IJP_dI9dm-W6R7vBU zix&Gq9F11de3*?}*U?3#RU~89j$w(eTUtdVRk@z;bS+dXS~&3JB)k;w$P###hR)5F z>Ad#M5+Mox-k~@Ca!*T~@~i0NycBP9++XdXQ%{h0*OgXoYP82nt5P*R*t3@5d3HDT zi&dg2;;O8~wn|D220ug&ArFw(b!ZtizD%F1MShsmADDYzS zB9pwcDKm^KCg=Aws})RF*f`y{ta_#9SyP;_bA8fZS_!z~dv3hB13j68jJPA29pC>b ztD;Juy8M4!U#DZrsb?aankRB=LgLHhvm#Xwx$K0cVxqTs;FHTUvz2*pLfd&9q>*E2 zqPKjY&MK!OE1rDfilZIa8^K)KgVohQ-|qT}-mmrLa;m2_C{VX5uj2S>k0`Gul4dWI zS7oTTJ}R$j2i7f)SM>WOdtV9Ajbl`AyF~EGHKzX)D)XkEy0=1+~VR@h8zcsaSzt zQ%zOYohwk%lDjIX8lm<5%w_Inh=II$@uDt_Q4uAYc()fTDBPH0?rh@aIH-!Mcllu# z|BG_x$C~oV+q{^5zoM!d^f|ZrZaSk1bYM*ttFKg4_05S=l~j$mALRez-K<~#BbhkS z>GXvrc>DS3ah1qn?S3^;6Bgh*RLvXhr#DqnRg0%Np*H);Y}UV5QoXG~e!5kxij!a2 z=EkC6X#;Uo&9ThLdX&fevwNiReWi=&gFG0He*lfCi9+QnO zCJa>-S>tw}%UVyHv&B-Vv_QfG3f0 zOb1sb;#TOYRaH*Za*LNI@l_+E`^p95(XpR7*F;5jT)`upt23L}69RpqO!Ovm&*g%m z(ET0DbAR?JuE}5dph@Dq`LX5`?H%B9V!rrJ^FSx&Z|hanR8JZQkE^M=G`ixetLU;B z|NgJKPxOuu1$szzRn-b9so$-xO1oz1Rn^tNwjT(dhmP9*mDcuBYC2zyze3?eU!r$$ zVSeG|SN^}WnQ_jEO+7G96$^L;H;M1CyM%6CTSe>HaVn_zLC4M{*2j8joSJCQ4k>W9 z81OHkkfduQNrzr#f3{9FR3-mAylr7b)i^z=hKjA?GPe>sw+S63&OvXTvp$>Hzv8sq zS-rc4DjoLcqyO!ezSJ7T_Fnx|O_gC6KFZhWF{*k(kAnQ7^pfa3z)fUuN1@x{8(aJM z`v0*1+}N|ty?Fx-XM;78M0_ohV#XPhvm&h#5B1<$YL1n6+A&8Rz>EKqjk9&R+NzAb zupnRGaI2bucW~x=ZjF4sx|*uu`KY!Ec3BNiIc1j|<_*l(d+MmV*5w}^o07x4*$)U! zswtp`d1vJlnhUj6xQ>rkWvm50M^spb8AsE7j%w!XvGF|OY2Vcn!@MEp>KneRC-k9s zRnNL`(s@1?x7_FAG~dN(xn&YbhK)K`o`WVQr{1Eo~SS2w*H`jdfr~orG!{jUD~&J+$Rl*r?w6G z(5C8v4XHHrzO5%WR14f0c;<^~zEp50hq4Q{$>F52o{sB^^LU0Y-jlpt|8n*B$A4;$ z9@J1p%I?N5=kvO#k*aFS;70i6m*W)K_D?tSb%`pfX7Oe?Gm)Ld;b1iztGX3lDQCXZ zED$V==m{;17|8!N2I#U$==5He)6*NP`lf!NnyH^$R@nl*yM+oXTZ|xz2^|iof}$`m9#%HmyhhL?o!3G|hnOp(VYNI+blc!4?)h2rIU2bf}#8-;K zV)e2wvst%!`jESNRU6gP3c9N=w^0pEU&%966F2L|&!{?<-v&MG8THR{7ffg8Y?p6Q z>YSdjA#*y#`X|o3R;|QlbyU0CDl=d>psi|a^|-A+Z>#2oepiA!oDUY6)m<2|S+{D( za~Bzi@HZ)x1UW{JZ>L6uhizorERKX#PeBsz@yRyy0h=%j`hZ%dPR=0Vq7)$E!s(^<_g^CbtT&OB(%Rm&g;RNvK4QgP4K zdQWFnF`_0mCX>xmaj=;OpVu zbDb;hxhhS6)J4^ecos9mDBRQ5xspIoR_XIyR8_yqScvf%-%YC+cjQQ6<<&f(u<|wM z|GM*^=ltJv{%CXTA&i_K^f06V5q4U4k z`CsDvf8zXSI{%+J|I3{J70&-k=YO^Hzt;I*=lo~sKe{Sr%y{Z2siUrpY%67Rca>l@ z$nC8XOp)*eGyD0>+5Zc1;{0+G=|()>Uxf#Tz|5UFMK<+3`+KT&#hSL6cW;n!Y9gc- zk~UI_w1KFC-;-;B@NguHYgvC?^Q`NyesqNlYw_d!VJmASei}CQg%{5qSgaQgR86X+ zcT}SG_#u~IZ$o0U2e~pFRAxj5$(>XXL80cZTyu#Xe9O3Exa0C*sy!S%GK3Bj zw`chfwM&9SMkv~>DA!qsyFK5G zQa3CU!W1>t6>+*Rtwj84`-}JV<;h zX9;6Sq2H_(!w2JyBk%)c8axwxxju&g7&qW4Bpsd$)@p#Z;0fSYozWIN8_ewD5?Syp z@EEegxCe)HMO*L`@H%n?E>e?t%WkO4TmZ{7Gz1R;>Ae;! z4F~riU&C`2a;)>5k6a=fLpu2KC#VIU0^VNk5~tx}1!q8K;W<13+`1V}z_Y>Y+tGw^ zvx8?K{*!qqcxo@2faikS_Mr)QHn{l^=ie9({&JXfH#wEJfiyl!!s9{$IP`m$=mbvz z6HdCs^YA3_3uGib3;gC3X$77Gu07)tY4B`t)maXRFm6D7&LtMYGr=uClP-)K@D8#P zF3!8ez0^x277Pi$lK`)fSl~(ECFCGH53G6BC31`#a2j$No(|5x<`TK^Ofd5XX$77I zo<(lM^9<&pA-MR{B_1RGuM-6~U1B>D4o}U2?7Qs}ZVWl#iF@GN*Tcou03&jVj=Xo)0v8aSREo%~Xk;3niEJP+)Zh>GCJ;34ETJm)z}#C9OC@ObcTL{7zHa6b|V&jB-8 zQxpz2*r^BFf+vF^JuOiU?gkej4W?55XF`VevP5$(q=4Pc>M3&rc#7p-N$^~7-au3b z&jh!!uxuDS8yv?vw(;;ZaMWN+q!|uY9Eld;@!}n!oH`LL!qdUurxX8K=E8JK zRDpjBPXdF}P#4?{rXZ)`Y2eHmBqDe^*mfowGVZ}_Ehq@Z?m;9i$otG20Slkp}R1a0h#^HHYVb6Fx>O@HBAkYIdfAXM-o!kmcaH zV9PJj3OoV4mPNqff-Ru(kjaK`B#JhnA-EgtgQU*EkOT4CO!k9^fCF}*E_e#)_YLYY z_F$`>cn(hjGj_4L96S@;wHFP*bHFe5p*eW`em0srfac)hASYEIx$r!2=wVK&fTtWL z|Cj$4Av8CDV~(IkcpA7H5pVEN&~u#B56=b%{XpV^r+|IWpfPwd7u3?4 z1BTpT&n{yRPR}Pn!qdTj1Tne!4a)y?NSP2@4CX>SSh<2NQVa*zRb)ajJR7`O$rf|q zB9TRSZJRRK4ticBG9PrJLq)33Lrb8k>V~Q09H~7crQaleA%cLl_g2~445OCxwDN^8R z;MILnOfzowGbi{w^LydB;JXi{SZM4YNm0&^mx9NG2Z|~2H9Q9#UxGlw)4-5W^8XPG z?ocI~MJjO`o&<`rN?e48fWyn1>`8os^D8Rx5S|JCUPTFi^Z5p6R>iG}N>Ef&A_^V? z?nB)09PqvB4C%o$!HaPO44xOq--((^GzW9Rv9*;*gr|WY)KQ`*JQKWK*W^_mUQdZW z4HTz{Vg@@mQo__BlEE#FsdvM(L3dLE1CIw|S}>MrIGEB>iDmFKuuTH#Ar(UsDO`{2o7$!C4sG%5Nb_l-UHe0$y& zo&qjF`2LD4Fx8ca8Zpoo6MGQj0qrqCE6w2s^NYBkg%O50fdF^X+HiAkHh9vsJh(R( zyk5lfz}hsrqHq%rK7$xHN#H0XB#rn_f&8QBf@z_BQp7XCp`B1EH>ZI4h|x+&XQBx) z4^0CPAx0B9;0f9}ld;bQU+s!V=3a0qV%*S*7Uz)^;|3g%gk>UzjCpZbFQGHuxK|(75TL#D<>4x3LGmLyY?zaAGf?`!sM7V(c?V zK$`aUd7J>wKvr^dI{1AN&ja7;OBOQr;3mX)MnhYCh8#4Wf%}mhxM={ImRknown_polyvars) { AstPolySolution new_sln; + new_sln.kind = sln->kind; new_sln.poly_sym = (AstNode *) ast_clone(a, (AstNode *) sln->poly_sym); new_sln.ast_type = (AstType *) ast_clone(a, (AstNode *) sln->ast_type); bh_arr_push(dd->known_polyvars, new_sln); diff --git a/src/onyxutils.c b/src/onyxutils.c index 54e09c23..aa9b4f37 100644 --- a/src/onyxutils.c +++ b/src/onyxutils.c @@ -471,6 +471,8 @@ static PolySolveResult solve_poly_type(AstNode* target, AstType* type_expr, Type break; } + if (elem.kind != PSK_Type) continue; + switch (elem.type_expr->kind) { case Ast_Kind_Pointer_Type: { if (elem.actual->kind != Type_Kind_Pointer) break; @@ -808,6 +810,12 @@ AstNode* polymorphic_proc_try_solidify(AstPolyProc* pp, bh_arr(AstPolySolution) new_pp->flags = pp->flags; new_pp->poly_params = pp->poly_params; + // POTENTIAL BUG: Copying this doesn't feel right... + if (pp->concrete_funcs == NULL) { + bh_table_init(global_heap_allocator, pp->concrete_funcs, 8); + } + new_pp->concrete_funcs = pp->concrete_funcs; + new_pp->known_slns = NULL; bh_arr_new(global_heap_allocator, new_pp->known_slns, bh_arr_length(pp->known_slns) + bh_arr_length(slns)); diff --git a/tests/polymorphic_array_lengths b/tests/polymorphic_array_lengths new file mode 100644 index 00000000..6189705e --- /dev/null +++ b/tests/polymorphic_array_lengths @@ -0,0 +1,20 @@ +1 2 3 4 5 0.0 +1.0 +1.4142 +1.7320 +2.0 +2.2360 +2.4494 +2.6457 +2.8284 +3.0 +3.1622 +3.3166 +3.4641 +3.6055 +3.7416 +3.8729 +4.0 +4.1231 +4.2426 +4.3588 diff --git a/tests/polymorphic_array_lengths.onyx b/tests/polymorphic_array_lengths.onyx new file mode 100644 index 00000000..787693c7 --- /dev/null +++ b/tests/polymorphic_array_lengths.onyx @@ -0,0 +1,23 @@ +#load "core/std/js" + +use package core + +main :: proc (args: [] cstr) { + arr := u32.[ 1, 2, 3, 4, 5 ]; + for elem: array_to_slice(arr) do printf("%i ", elem); + + roots : [20] f32; + compute_roots(roots); + + for root: roots do println(root); + + array_to_slice :: proc (arr: [$N] $T) -> [] T { + return (#type [] T).{ ~~arr, N }; + } + + compute_roots :: proc (arr: [$N] f32) { + for i: 0 .. N { + arr[i] = math.sqrt(cast(f32) i); + } + } +} \ No newline at end of file -- 2.25.1