From 8c27e4302bc4bf2a6fd75a941f843e998297651e Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Mon, 14 Sep 2020 17:56:34 -0500 Subject: [PATCH] added error message for using polymorphic structs --- onyx | Bin 704040 -> 704056 bytes progs/poly_struct.onyx | 6 +++++- src/onyxsymres.c | 5 +++++ 3 files changed, 10 insertions(+), 1 deletion(-) diff --git a/onyx b/onyx index 600acc296ddaf8c80a1097d4c4d8a6cb62e7f394..ec1d3be948189aa8a245629cca11b817cc7efebc 100755 GIT binary patch delta 38975 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 SP0Hn&8#VE)jFc04_x}Y#se~o~ delta 38925 zcmc${cU)9g*ET$RpBV)OL8S;%6$AuDRO~3IC@L!Uu3#@Hpr}}IY^aFXMqPF>CiWVP zWABQ+#Khhb8(5;o5{<|ZALL|vY~9CqtgtNc6TxD0z(+I zOHJD2#k8vp34xCK4JPfiV%jYx`R!uz-6r|tV)7Fvd3G`RS(E%-G5K{>-c$3XnBt+y zKy%=qP4(I&wq!? zIXVq8+1VD;jxfYPn`F{@6w~@&i@P_|$p=J86h(6UY`D*0uSOKWdQK zDKfbf{~Bocx$7HNKl6CE+RUR%5E4l}8f-~x7@ZRns)p6b96dPFl9ezVi}PZ2GoQwtmiX@)!`3lP z*m}duF;Ofkvti;9t+b_%MC=Q5v8Y*A)X3QV6xL2EZy07M%?4&Ro?xk!xV1zH61O+> zOD-+dttnAinYkEtAGOL{n*2s*;f|a}q=hdx?4Ih7nK7dpnuNsf|kH~>S_xEo0TM8lZt3{MYX49t>mw{q2Fv*=AD^5dr?Vd$h2ADp=F~D zH4JY2+h;?R!HZQhj5UxH@|hEJQFF*fXVzGf$5SJoj!2w2W~S|KBJo?_GB0J8 zVtmZ6igbJC=e-`B{g~-!yvf-b!ygBdS&z)vgOwO7Z&+~1m%sdwdEk&YW7Q3h4!7n{ z4rlrwX~OuUi;8sx!`!2>{I?^9FGqdY{!EW!=@$Is3&XCg)@-xk@2uhc*$E|{TjtDj zTE)V`!ZkOn8&0!=U{l%)3Ey2uguD@>}EH% z*YL;9d)lc#nk)A}X3j00#It`hyt~^By{7iPD%|~{A?A^%A^BbaJDR!mUMq<|c>r~g zp~|CjY^0(7qbkhV5dEkfJCM2SQ57wJ`@P}TlZVVEbKlcQh6i4HZeTtJdR~j)I+uCr zc~{0tXI9SM$oSL@C36Q1IXN9zlgx%MLm6w8Ir&u`&flIe?0wTgYQDNiKbv6i`{Vm^ z3-*Z7Abep&dib@7)U50~Ck>DOxWFoAZhafh_^)Jm|85-m@zD3N{M|Cc&G#eF8Jhn2 zmXV?6hjuK&Fzv%yw#DG_u|>)LJ5jlJnc>j~d&BgP{&2DLBRUAiv(Kd%>uZSks|s=& z_t#Skp0#9Y7uJmVE?vQ@u(nH&vq-j=tQl+IawbX1&T({bP^fK0da$z<`Y>{~lm;*s z!5@vL9gMlL0J?-A8%Oq>Rb^8slrtZGHj{>N_A?tyjU-4L(h!MNE4{a>Mzde6$+GLy zI*C#>mp_Z^or$r3o6*U~6`Vmzu1Eno++ptQT`N9xB7y zGq#RO+p?}Kg8JLCm2AE-&z8A!Hi}%!vr+u$IAOy7T1DH-vv2%KKiXo)7PI!oM)s&A z#*L{CtRIp$<~XuJoOP%6&Mbtrp>$`qosW#BC}-wC9V(()qbaE(TgMmlQ)PiJtPUGZ zgI!n`{;Dq>abb=4!+yqZE^HU)xxHw+JBwkBsEh~mMqX-rupRtNPkQ3P8hRe+CaS|G zWsMGPBid!gaSPEP)tagDIn>0HO<`7a)RWaNy}To0%{c9mb5%=uo-BsH8lu#K7fq?e zhOpN3yb}9RdQX%oRyL=nmD#9L^~{1e>g~lUqhwRPn1jm_rlff;A`MB0dWd9O-;!ly zXJ#b*=*2>+LtFtJ_;$`2F}kJ&?^r5^Jl#&fff^7UtS98^WLIt}_4H<~*=PE}n|ZL# zbk>^%vLEQPHygmBsAm<{Gjdd}ETfeB6~8IR6Dt%1kapZ7q3p6hBDJY1Pt}Di5$P%M zLq+zCUu0SBY*imE^I-wp?h#e@L2utoqkY);3VU3N_)iP9h)9b9>An*4WtB>e7up%g zw>4wwswZ<|tEio2CCec2>-jN17z zFGe)RkEQUki|B7ZR@LR%Lg7G3@UFrleU#A|8Mr{9Rat$Xg{l};dQ+6p_Wq4O1x zdR5Gc&5cUs-bUs6MxGtix zN3d)1W0SqDsLf;K70B9_@02aeuR0V}9HE(ktebz^o1*o@zlbU>mnJeAVGFjT!eTH) zQ+Xl$*Ica2N_CQasd^3O&qIHwg3HZ7>G~;}2$!U@C#xEEp#+>jZ-lS+`6uCBdu!)8|x|h}35hsmVsCAXbi* z-#JHVkzE4RcD+cAYqGX2HY$qnY~{gHo@J$n4ce+a&MD%VL6sCyXJ!9&4E2$E3Pm2K zxXa3ZM%QcNLAgzT*JKqPT_D9Ifof@iIAu(6=2Ac{JTsT5T`e||ouTu!FrFmSn_BEF zzneuDYOzXeG2O1sj@de=h|D5UwYSI6reF+{d+A{?hQXbrt-~gkA2CxYP^=XLegn3X%{68>VBHzZqOeBHoo%9+Mr^dDgI@8U|!DRLKuSUNnVj8kEriQW~nA@Qw z#q=;h*7aAa;i`G#Y-joCqsTd?Y-!c%kF zraq2H4;e`F!&y%!cT)S=8nvG-gclFt?g8s z$wJvo>e`aELF<0kl8s~~$Tor{u`QGu!3MM8^e%$+c3YF6)WBN6fpSRUV5m|!WsAiV zjKf>8W30}@MIsAh2Z@e>-B)YjGu4fkaQN$;xYzO9Of&JPQ6h=!^+Mq{F zrnPOb*>L|vhug3btS0$JA}<$dK_n_~J{^igoLh8Hgqo_MQ{>Z@wPHDx(3aWPz0nQX zO%Vhe%$TalfDv z3M!(3BBz+1%(=ytbLPZbW4sq#qA>9q!lSSuRY4P);jTGWjV=5^N7*KW+i=Z~36md2wT`-`mWQdY`xtJKqwo)dj<9EEmg zP4Fa6?arEW`)slv$Xw|6?rb4*q%l2Ms9lv9B||;})PXsOD60o+Q)2sik%H1;n4W6& z#LmF69rf;sr=l-S?#b4=`)nv^LF%@h#4HwM{&^#@ULa<4m#S0rK0~v^u>~|EsgApUe%fw z_GO7qYt|_R?TOHhAUSqO@z}X^upg_2u_U`6 zb7f1ZL^P(!z7!J8D(GfD&X>;{b|iVw#Aw#a^^YE+kZ9TTF4y1&7(D)vS`^o1^f;P1 z@iLR?TQs(C^~gDfRq+ZpsWa6&K{ms8Bdeyas#NFq^mjCK?^*^i)wOkl@PaVZ)EZIhJfua2_1dQ;FV+?!>S|mItt+7WLha*7Rr9EDxE2 zej?~*Q7F%59oY?MVcMBD z^W|kbB|929oLRC%G=4aXV;ktjaMqkHqks`?lSPXtQNZAqbZ-Q<(`fft)|sVHuUO{6 z-EUKJEDOVwc`TOoa5&Lcsf&{W)Vg>$R+cGhq+}0o%|~KSzGf6^WA8{j)r0BdNNnEw zP{=42&1%!yQ7lq>bu{8n8-;o8?H;mk z@hpUY*iFmh*)leR0uxwc>@!9sFh_?P(?pAi$rY=-tZYvu_|F0E934zx?W`Z{Dy*vO zWIr0N+R^sWEWrAD5zQHTHku`}4C* zbj*9%bTEeWt0%98{~}o zNHZ!C_g8J-|ofiI@U5gli!N7Wab0v34G;ut-(;)g`JZsFWoTq2wSr2xTnk2D`tR?kI z!Wz@P8BI=Nt*dt2YIZl$8+n@%{>}rV?wO{FqoV>)J_nTVM|zjU0`jI=PB1u+}r$z&`P*>aNfta;r{8_k&> z_X)jES!0Jk7TvG@nS2==rxT4Nv6V6{v%G{5+f3zQT&!mYxO)R?JCzN#?)gJumuyGJ zr!qVHHCJVXpkbcp5nyyQoentSKJnWhtyJR%K69SY`Wzbr#-W9Mz)>uXR*o-85n%9*8WE|bswuH*={x_v1JrHn|0^EWzgB#*a55| z>p99&C1?&S&s!y`G5gFx=4L0V$t;_Lqqd*vmpQB@*4QqoNM-t%f2Y!5jA|R33frVH zs_hS{usuajQemqn|GBUogW;}t4*f@~wv*<GOy$ME0&z&_dKk7)@BnYBD$4z7WfaQ*?158|>sum={}!bHnst zm!%jp(nGuf*%{P&5u03f!!oElsOs5E6!mUEcIjQpLzrz&sr(3fw}`E@Sm37&1`Cag z7c*y8=KbQrC-T{1<3R(<(eXN)=!X@or=@cxC2qw^WU-RXVzp?&O11;L$dFa&m>D#8 z73*H%MprQ+yta_XddOod$YXIZbQW2RroUHVopIew@$fTwtY&t+jvLik%{H*9bayoy z-PhV3)55t8Vgw0cf{zt^DrOJepTdq^8=R#H!2lkffl^cuBSW1ovTQmX5UE^5wCq`` zhhu`TTHs+fZC!&U-gLUX27`G&`nHBu>`>7aZd1eOM5Lu){e(eEc-6ge5t%ee#74w= zncdJ|)#Xe?v%muB zrRplHE?-xKOVbqgxS~YAmEjI$bZ3i54^qTB%wp+6q|RdfY|*S~!IOj}O_vBOc1v=n zUF%pyo4Q3T{Z0OCbY+W3brmUp9rJg&?Ofn+tBvCDtdOMXjyang4$NQy*yAk9U^61d z&PKPYA=aVk!S(T80hN7l7P{4ub)s9PV2o624^O;1-ubo=(Sy|JrPS!>MD+R8dp+~C zSgoeChEmqE39K&3>zSM7r3y;&mn)FxYK&1q6{z8NY&}l49(;$+Q3_3!eP)f)Ir33= z*~0{{bdI;8DhoTuZgc0T)&3uyD3(pf-9#ccsyn7cFqA?y?dO=Qik%+0^5Ej6l~Z^?T-4zNzY=S)qsabntr?Vp+*i zab4MQ-w)Vwv;D?O8=13Yy+&X7@GUa7+QPyayGjeTvQYinDTS)V;LV4h_{A?u{arhZ3m`Y&k3Pv1$Ru_yo{PY%#IQ;YlQ*ii62|=s| zP1(lg>d&Jc%`5IB;LSN1n~e8k<#BNVwn>67sq$k4|E;7VA1C;?DnDNEPgH(_;BOV- zFRHxa^O(vfh&Y)g^@^j>BCttSBnp0&$}92(DnCldXQ;fAiSa5QC*&hkex%_06^Y-e zNSu}`A1~rGRQb`#Xri1zHJ~J1xd`uAgfCr$mrE#_R^oq9d8LM4sQhG+z&(|pCitr= zKTGhZRDQ1Djo|gD-uWW1O;s2KzfR?s3*MmeYXm=A<-ZgBB$eMF_&AmSUho4{{s+N# zQ~8a8Z=>>C1m8sEcYxRD)KUYxg~CVW_X@tE%I_DvjmjSqyrl9+1^<^$sflBPf2H!r z1^-CpPYC{o%AXW`RuTCjh1cs8<6Wxah={bI2v0@$v?9E|2tTF>KcooXs|eq|2;WTQ z4~w+wnj9Sz0e@AYl-RupU%m)mvIzf8+0E*d_-~8wPm1ujitrbU@W)hspI#)KsRop4 z-=y+C3i&FPSDI#l%I_5N87jYB@Z(i}tKdhd{AR)TQ+cKBJE^?VKU%81(uW#qHG1)U zX9xpzZ?0P>cyWyk^0k6@RCy&%X_Z&v$l^rF6z7A=E1mR35&1opSK?n)dBx8um0zFC z^>_@5D7LA*lJGi}SDYGDeznNZ>>~0>MdHU5;Rh7qad<2;s`$ayT=0sYCW6Hmv zB%dOYFw+WyRU%>K49#RL6^Z|sGBK*P^-ATH5_|)TAL?p0MB!GQ; zL1G(<7+{H5kn6M}JO;0V_+wOF@iU|d->XQR_A0MrqM6F;m7La90}Ai2@=6o9tGrTm z9siX;W|2sniWsj_d8Okl zD8kQBc_q{1RbI*T2$fe7?x*rf!ktuJNvoyGuT;kWhH5}D4pe#N@u;lw%H!my^2*~^ zTIH3;RaVY3bjtYgLFJE&(!Wsovx2{;@|OgERpoyc{3-Ba{J$*%Mpf}p@Y_`Wso>YC z{7bU3EqXAU_E&l zkiChT?PoLWKKSBIfOs(-{@A=>nP$AZpLJr+^L+lLa#mvJQpf@3NAU+)UFYfO^#}W? z?rTm`+$RIFtIjf>ILP{I@w(jW7>iU4tDw|fzy z!rrYnP07N6;B?9Yc=WuF2+FoYYz4BiCsY?j+OF;lva-{Rf#=vCI-It+UBQ)yPeZBQ z73MERkIrAbssbH8$t-Ej6}-TmWju8SyQi|!FaLDcjK*JMfAOl`#`x>30pq1T$o&eI zw;6QzXI5RhJ`#THHo4zmT6WOraf|J<;!+>-yv6M3^%FMCuJ=ume;jY82S;`iuCuZY zH0&w!w{tDjlr?EO(`IPwAO2ckbE~6jV_(jg{gl-%Yq#`tfi5LX)m@?*pP7$c&q7T* zlV%Z(5E}PFO$C#tD{cIYL#Pk*;xoI0z4VE{m}80Ga`NTWQp7K89{!d*CKAU}`V;0=8#FN{FrWGxDa4FWo*r7ZhjSGG` zWW~9M@tGapuj7rX7~$YGV|8er3vVu2dgW6MncL9|7e2`1@>-NA&Hjq9vn&5-#jtFz z%DZ!2Jv+QLp!wcXU3w6}Z&e#qO6fzX;rC}G-)G7mX)z8%4_;Cx$l!7oqKZP|N~6n^ zDsTL)8pn09SH`#1`EniaXhrX;qXY}DFl&lkj02?IS6HdiS>c=UNW;wjC0(n{J6h<^ z=gZ9vG%AtW5n9th1}WeciGytPn+`;8mw@%<%n2H!iBf3*JX3oFcr@?YzrO zuQFcRQ;q(-g7L4ud^%$m#);8&?`7DPu&uvc~g?(BlT&umT3J~F2M=klRQY^NEO-x-_MCh1 zsy&T+p7ZY{Hj6sHe<V4puIP!b_f%}(n&?$ZIw&-WxrH$Snd9q|t zw-pL8<8(a5_;Y_6^`6_%)4%v+Tw{p&!n;_v3@_|)4UMP1aBqo48*{$l8a02?n7-um zV7@(!P_yN!sm%LWH*QjBP?NUHyq?QIIZr$-Gyf9LP+E$GdV=90vXQY@YEzo!;nJhz z%y{j3G}KD+w;TFWRBXynHKK)x_|dq@N~&(felgyxAh|N!WclbMeF@#^mnScL6>9RD zrcqA7vamW(U+&eMq0wBzA<1*he+MrpyX4@r&Px64sf7ADN&yw6YHS|$tSH^)o4iCh zl<~`&lD}{#igS^MvvYLUMasc#jnl4xMzqsSdWct7>F(08vSS{Iq9ry#H&Ci|0QK>Z z+;LEs>>;_8^(xdV54WAF9ZZ*m_SgH0t%vzpKSSRhcU@h`ob|&CU{BC{0~=3 z_maGDJn^HKbd7hbC^A`zjs|ddI^!(`vd+d&-cmcp#u=OYNV0-{(mZZuX|J?wsA-C= zKp*`jAM{C=0O=N{Z#(u5^y#{b>{U+ zarTJ8nTsaRcr8?N!>CVh!=$Db*%K7I9ID?`nrEZY6!zbbvc~vJQwdkdqm6$zllpO- zpZ07aMObgj(-e%ut7umXX(IoUOa3jT`sF{b%)>N^HOD#B955>zi-eX^v_;cIC7EW% zM=hn^4CkVaT1j=e&o>&|N?Ob&l0|FDwdvTubLE_wVl|Z}PCP?#BpP9XG9E|yZYKx_ z_ICup?M87uR&=}cD29Vmym&-VcZi0xmTIzV#+9ulJLd5EORgBAvIj=^YrTE({3YtL z9Y4|OHd3<1?Ks8a4z-GuTrDz{ko{ics7SndvJ4odD65U4&uyiJ7KV{Za0$(CCwW;6 zQA0!NAVQW6)lj36^rD?qxr&V%v;`cn6;Hf+lzL~7$gchSSjEwwRHMD*X>m>sou?im zv`!6W(De3Fpv6!%G>i_kmm+Xak4H&uaeXW*O1kbmwFeqWHxd75Jhs8}=bL6dQV|WI zh8^%JlQz_?gXC`A5X*k^0a~DOMhEFV$GgI@ouvhM$EfQfo#8gG=<*;bfWCB*PI0%F z?` z@~Sa#m{eZk^ovN`hepIofAho}YED*+l)5vXeO<|<(LGKI;W)DGlOWZ#NWox_%AG~4 z6C@87L`M=NM_d#CH9;!DSU$Opk^HIT7|DUf3cd*sxJ>=VNPfW`@cJTq@@1uu+%9su zUth=*g*-h37n?NM6$GCu-VeBSpd(|X>b{L{6lS|7c+=rz$jvB3KXJ(%J&VdGN}>8$ zLYhz@9gm=TjvU}|HWUjoW%mIPw_~%iovtZ4daT~*!LuD|Q6zH>gs-u}*FUYET!kn- zq@qxlC`igmBt<_bO3wApC+8J?h4Bz;glwk*Kk5bMAb2<<6uU2)i+~NxSZP%2mO@&y zKw1w$wFrJ9``AE*dMNo%x9?L8s`}S#X4X`8DIwOv^2-IYzkIqsR`RHEVDdk5b49Eu zEa5)qcV#mbazqF=7g+72fN@e7uXcsv#z`(U+6ir{&?;|l3##rfwb25F+PT2kqa7U@ zC%O7RnDmb{|7?p`)kLiHkmrKGe%_qPTO^H_y6C3~X>5UXG=gfOlQlUrmFZmE&9Po7 zmNIF&RRYul{P80&HlrzB{+VKs+25;HNVBpCl_~IUr+SY#+Gy;kVI$*X2Sw1W@lp-E zDYZzFCRr>K3!*d~QCgDZV=+Vx4K*H2l7>n6^oG}DsW#@99+RcI;#JCIskudStVQrx zgwun`QkccJ#)^Heu}ZR(%y4!8`zcZnTsq00B86haXrh^1T943y2_imbGlEG!w&0%2XJ(r(IK}dfu1LnhhgeO@>zrMD-zp;cc>- zCiTH6F?^b|N>}?>F77^UZ|+fBnb3mooIxbiU$C9{Xaw#hq=#IFNL|*vtEe#_1d7=& z_yYBvE;%}7sWxgHZzX$*`ZUcK>T^ZapOj1}>PvJKYUle!)n^LTug}oi=@>dJsl*J) z-Qr_Cr4~OKtId$caZ!sY(iA8w&yoh?V(Z*l7=D)+H_nnm7`Dw%XG_)+?$!P|SMv9J z{Zp>|$_JO#ZllwlGu;&Jwoi1q@Gq}yR3Vn8KT(S`I6Fc+(xltC>o{wkACER2b6E z(S5F6kX^XWDGVXm`-LH7>1sg;xjluztGI&9?j5@{Jeu{3?Dw9g~5rT3LmWxBXRs-wNVF;}L@6_PhqU5N^wNYN{$ zp4@#S9bSovv#s&LO6fS~jW*D_HCP3$BKNhDi+1gIFnYWmhd*c6i{*kB)nA7}W*8-` zlWy@v8LDhlhE!KuJ421?NXIjz)7mcUa>b3G3Y4*4vU45egW>L_*rlllZn$L}rH;FWQToavY5peZll7GKg__aEg`1_a zjMpRDutmCKy#~je=Jm-UW9n8ZOUs=W8$0fjHcCzj^YK(FGf>+vSYuk5*O=$2Y^F4u zmz{51nTfmg?4t3}UMZU6E@`MyO62ybw9hEz;$sP!`?3G}O26%wwql_&?|^iZ`^+*9 zJSgFFo)uFl{t&v$4P(i}Qff&ts-J?B?8$0{A2}tJBfry9OE%1ya9XO#d7X*IAI?hM z82>hd^0TD7C4I5~i%7Mlpa#4lIiJS@atjSTF9ljonl2Ps*()jIyi~_B)D-MRkDx78 z#uThPo+@0BT3H^QrpCTT!!JlR%g!?emyXL-PJwoiO Y`09c*iLo&>6ALuSlyHuBJ7=hG}9ujk<>Zwv`rKlbmWTo21bkovQTzkU@Utz3ZJD z_-qd@yNgZ42^>8o6^Ye^?p>2=;ijd{b*ZA`TVFhKN*sF;2OAi4jgUJOc3pC+cdS79 zYGR>s3%a5@Pq-o(#9l7?X5UNVo=l=RJ)T30uS=bIEnmvMj#>9m% zAw@a&>#pQ+4wjsl5$t9>W;2f`iV5F|I%iA4b`71ykp#}|bely(q41?E(wb~(EG|-& z&ymiu!*n-C3S&pf<)zd~-}*W}BidSg=pj9%vEZ#XiYn9f2Op7YKR^IJP$D#$8A`0~ zg71s#=7<%m#u}-_N;#efVcL-lKwA2CB@it9V`b9@&?@zd$j*}c!p+im(C^pKA1|fm z+~+FQekG;wcQJJ674|9LV(9iO$#wCi$q-*Bbl*EE-jmLi)$Y{~cFmJ7y5z|M1=RpKfSQ6jgZ35CX%YSt;m05$PaLWl zlc*UrP&0a7d2*!zd2-M|I2x2E9|qMMoG0%E)gA%_)gGEBkEi4+ z+LoRkBlF~2ae4C5(MS*coKbmlV^dhj`Wv5B(N^U8xzqCGsZ;ahxq`qiF`?iEtt}Qd z%gwm?|3z<(_dg()f23)C+Vb9Gkk({S3TQrvKpCJdpdUepK&Ood{IpFh9U>-RTmeOc zl0Y*-3n$=H%vuNMSn#Vsn?ZX)$3d4sw-tRQ{ZsJoKttfKDCI(CF%b_R$O9ArDypxC zaC1-;s5fXRC=oOjG!L{K^gU=d=rHIU=oipq&}+~akakj@Ube-4S?rm8LA61lph!@6 z&_GZ;XfkLHXbC6-v>mh`bQ*LGbRU!r`UuiY&XcV`6+m8~8lXm?2vBEGG$^6mOF+d*D^w zHPF^s69l->#Uona4J(*^cjVGr8T4ffq(-vjn~{2SR54tl`>D7iNr^nn9VdS5u`2M3@v z(Qpt02cRAO;a~t941@#F$U(3l40}-W5ZDieJt%z`?1#f1v}OeCV_^^4F%tHpU>}z+ z>yO~y$apwNfCEtSXgC-H2cYysI2a2Dpf%&*U_2avb|k^U1UQ(841h*Xg8gLJgOZbB zKLz%nbkuIhRM>;oOoRP&*n@V=fc;F^r=b0hq`<)}IG7CwpyWAlkO~K&^to`51_z)u z^WY#I4nRBR!@&YLScnXOMlOQ=V%UR{4X|GVdr{p>` zkF0`&)o`!|4nWCk;b0vcfYLMIU_Bgw)_eyC8{h!6<9j&x0S-389yD?j>^H+6l)MG@ zTVW4Mr#&IsF?zS-`SOMTi4OiBbpMmhe1P%(DN4h^JQ~Ux$I&a0Nc-@}DCAZ)7dt$4ur-6txq+|4IFd3;yrJ<^*{a zv^6LW^n)?Dg|;H=b0a{OXVv)MQ=1}j1#c$d<8}3a`e|d_(NY`8^{H)TxihE_NbrMA zD0nl)flo4prvZ2MmgPgBEYJ%f|?BY2l@X) z&^YEFN_lgUuv35ItkzmLuD`KZmgg+RXJ!m4o=KJE+4E$1{Sq}Sbb>~u|1)fs|DRBY z?*8+Zd~VXe_LD3dGu0*3=5 zfX9GCf!A$v<$1s=wz=|lYuuE#Dw```gJ3Q2Bk*RqT-mOSMx(RKm1_edopR;wz)gO+ zauV=!)m(Ww(4$7Kd>Hs$&0P60ux;&JS!;ug2j|LOz~v2)FmP5QBnDV?`ehtCnj=8ceu06PQL&CsEz|O#szDOAOt{)Nx))|0=f#Cyl<@>-1 zvAMFQtVZ)2&;yt;Dpzg}+y)#7e4T)Vfh|TOVc@w$Bn+H77U}B2JeiAx@zos;3v#gt zMg&8y90eS_Sn_XFDlZv%%N&6U3ZZBOLNE{+;aJ76PVIlcjHPGoa znhZ$5$G{tSajmVO(F9-8Bj;dZ#9ablSoaEY4!i=~4Afmi&Ve1TBj><_Knr{o z$orpj{Qyk{y!t3t{sq|QF)|KZ0<7Sy(KOfpo-5Y_ z95@!31l#~z4!jQB5A607B?nG^hBgNdd5)6fU2;bp+cyI4eVHpq1L;k!JQaBMZLXXF zjQfg=1Fz(IRvGA65qo-IS70u1unW!z@Pd0Au#p>{ z{}rxq06}MWH~^lg1P8$E%Gke)h+f!d13Om1fq*;42cQS=q%ZdDz@AlcxB#r|k7E#E zC*Wq_Xy7?ui2xiZ0J{S%JT#g=t6^IX98(?JaSuHV1F@%tU?y-L(5ePbC4kL4Q~vYn~^Xu_W-I4_|qkv!-nY^@C!CgA4PVe^V^5xUO)>rc7Y~V^P;H_|1F8cva1ArGFVuubK`#4`t1a5tjFE0m{e};_; zaL_Y-zI-1{>T4Vk_~ChflP`M#OMJwATVTSMd^r{v@fA4+R``Zv1mNAgeEAokD;A|+ zgkC4h74QwC_ks0*DJ5jNJJ7x))-J$%z~#V8xIw!gm}4o+w}A$IX*d9*wT1(KjixM? zsP%x=Y~cVnxEve+BkkY-xWgU}fcG8Y02t^DdtfIw*av7d(6%NL zijd_Rz^%Y2;B{a;aB(YHUI;t_+zoVXEz8${+BPx{B*F9mV_Qq3F#>A<%SFNgFdi5W zya-$f)L`+u8`uPR4LAk(4tNV_TN{%UKFVDixDVJJ_yL#%jEq9t1HC$+?Sa#Pw}Cx6 z%Ci0on0;U>1f!}uq4NOW0J{UvbcO?;;@K8l4Y#95@vCehhjqaPwHSJ&@yzNG<`V0bc|6CZX>% zz}ztbO$VGl1^XG`9$+Hy!8Ftyu*P&$J@DHMWE>crf|>)i_g#vdH^d^7WVt!8&T1qK zj97~{2kr;n2A-pzdT9NfLbJcg=<|5&O4ViL zNBGll5q79XbAk9Gsx5usrCktR5W#PhBdq#{P?^4Pa*l%fBB|f0OJ5{BgT{)`5n6!| zkHQxWh&ZF^fl$U!o=_%`XFr4vP*^|s>D-3~_d{w;`p~R?+DcOI=v;E2sddt6OJFFW z^CIdO!smf2<0A;x(SVB-6b<1+>L4JV5(K=bMFRA+M?|?szXG`TLVS}M(w{(KF4Lz}mGlxQMX$`IN8`}e9s|(Ui^*>QY}QgM0pHUw z0govaz&%#c)&WRm6P*{*hm<3v_N%GXK=|vhnyL=eR>5tn4g(?XvyMh1$a}4)l~Cg< z*a3*yc)BAXj=l;QMoxoJ7q2N~5KKyKrM`pU$!{x75g4(R)(Z65Mn?s9*-j4!p{{lj z8w{%~@&<6-UTQrU+Om7eZJ5@%#Az$ch$^pp3Vsu98LV}e-1go1(t<~&k3~ zntm0b5A+Eksn1!YGz#4#u?#NiQ~jYRn)V#^9I7&)U7;OM zUx&h761fgTq-GQX;AJjR-(e_qBuzuGk_~nlfxJj2rK(&!(BkROwZU5Z7dkl%&9IJg zhQZf8vK|hoPeH@sauanBp=UH!goe;k5o$ySM5r>|5%7?{3dkU*5r7s{e*~gDqCN<5 z-B+420{Qf(H6keG(oqrYNe@KaT9hZCBe})`no@{>A=F1eFuocNaE;agxT}_q#%e2h zdg$`xQ^Sg#zrNbRm65I|Ov6 z%L3x)4S?grgJt5Bwy72e={RZ|hfEx$1Oba^DL}HXlt&Bnc!aLSA&m^WBXqYYPe2BF z#v>`~I@BT_BUi~fG&~+nZrOn50+Ev~@o;;M&I7n-LwYHsJ;*Wv(p}^S;HAQ;bpoWF zXqX6=Zb@@RunTPwk?zxZfHb959vz#hwO=+GSy)e&qmi}`RRegIYmaLw7@rHO8J~s{ z_3Q!B_6lMONI*31)P-PN3FFiOVceS@2xw1i4B&V27I1}H3D`^{1%%Kd0g?2RfDLp< zKsx1(LAG|1Ya&7qDNH~o8U*0dC7PRvBx=zPAmI)(ZO*@u{}Ky z%4w7*l+(y_Jm5PD7qE|p3CN@L@rbgQc8E|kT^Eo~p8(wTHaRC@u=Kr`uXHWl66``( zQ;#GVc+&&{OKF9GhI9bHtsc@{7;wu+^f!(oQQWtt%1Ijs<|oel_i zLw5w^(pLe241PybVtB^`YNC@IZZ3iBC zf{u1{MFjt*HzLw#vYv`k<9oxVBGjBZ20290kvq4fC#!SUBs@rK?1tc z1R)$lD+Hh`2pC9r1mJ6O1@s`N8GvO}UqBb?At0S52neSY0ut%K3^;2?4@BrBD(&=`89NCLvoBqVAJQBOhYsRv3wd)w}Q$`zir)i@(K3P$AzBbTVZ~mb; z^AE$Be+bU}!*Auq*Tmq@{8Mk$O=0toyR|fh%|GYX-4r(efLpRDZ2rl%1*Wj+N80q7 z)h2=YciGIp!)E^7HS_PRnSWQ!^gC)A^UtQ4ezm$UfiY)WTokw02}h(4)~sW0r=%v#(CSd-EZPn{Ilu0 zCw?t%@Dh>L#e;#fbQLsgbr_C|d zp33adIon_5RlAyWesMx|l3UNFkR7^;`jgxz15Wv(?wS%7;=If+1mDKOmvie1;@d~? zhi~an{@CiOIBfE_zlYe%d6m|R!wBE?BJuUy(i5@a#pjaAO!-=N82UP7L-8Hgh2n6J zFN*d#8KC-AcBx$vBVg3nks6-KD?}PK@6W$|79 zJK|5`mfaCcTC`v9bIBBIswtN56j2$;v|y*sp}`z(jSp2K;$FSaeq8t$e{trBuSAAZ zx#dcwT0$ZA+bV4Pa_jsm^k}Efxn5u1q^6?n?o-NCEIbj)pKqm`$Vor0`-G!YwFw`H zdhN-rZ&jh7T{>qBzN_mG` zil>e5kkwc!`CjLZnY-G1of|#^75N@zEk#q`>$)&^y7?Yut4(G8)ZxpBDfCb1QYrCI z)JiYfBtq5b9)SN^gKR(Og2a&2?1Qdexl)O0<1y1j_F=v;{evz`Tk&3!s=$1v{IS(8 zH*A@P)h3o4`*ZTzD1MSiY+(T&Gav*lNv_?GW|Uv&)~N>5OIXwfai z-=3v-7u2DkAFVJteupmdND5y0-s0C+tuk~oF zgA#2YG4*}--Rt)Ed%yk1-Ji4Oz4zMFI_K^!CA$@^bcA$j2|$dYhwW5`hBU=VR{9h} zAHaa%pCpS{tl>G(UGl7RgwB1lt!Od6k71h*9=D2r`N^ zRrAkuSIt*)&EJ%QJWz|O8Xso_zx6%Lu5UD!*0>cd=eEFomFu@D(^OmFul;8k5c;5) zZu*OsUVqnZF;1?_8DS>r0iv1XGrggbd@Un5OzOJt0&I7v=J>b%M{|TWEm11URpGS{ zFxA-O7R=OeZJh5Ar*nLr5thhQ1DQ%T*G=6^HT&HR)blx}NRkmIne2aAr0KWxCd!u0 zXbUa0kPZaEVV>)MIE)r{xKtVNcPE$h1n|Ak|F_w1F~NT~J1A7MujFROxdMU0S8qvu z0>wP9Pjr14w`-UueH18g;TwG(DB59j^ej+x3HV44%*RVEr(<>9tW5ar4-+)~5DgC! zo%KYTA0$FOL%BDFep*ED28njYZ$(rSBwjX7t)u4c!~or&#!sW(&Dj?loJ4VKz#bEwa%if1VBLc$yM@+)F|Jxi9ge{^^q6jxmPNUI@xS+$2_9u!p#;I5uG*|c;KgH72xni*K%@it| zD^m4BYMmrPj87*c!iC3$bS4S*?x!D;Q1nV_HBYR>-|KhEtc<$PhtiP6{YvlogS81`VH*sE()x(LFrj;0HX#L&P9Tq7ZqJepCaE^@`{ zmg{Ltz|4R}W5{6&Uo3iHT1;3h#u%4hrK-hZBczO70=*mP(h|`ZyFDvej7FnQN*1fJ zg!nF5gkyQpdZ`G+bUtV)ns@~*Un-`1emzXJnEgUO`gtjQxjr>X5z%@C%}5b(dK)^O zBBooHT~uBao+^47XTm8lRrnj1!>KS8?T|qSQ^io@To^q|g>z1$;54}1yEG#W{??s# zriu5lteLP3b|0iQ%S3>2BZT%ZgQeN@<1(=nE1);hMG`vFXX$X;C<@L%(;GA;LzEc5 z1X5iFl&q$<4$%QChhYw3H=e(s6bDQ@?lLWzzIA}=1FFAV1h}35-JsCr@b5y(Sq`o_ zw0F4}4p;jHPsU>pYLyA%&J>XeWID~t6jL!xpUFhOn@A!Hq`?%GCE6QLo6+Jd^v*NQ zX-gLD{~KM&0!uMH&Jv3tATe8<#h*ia=ZHY#U(e~!Iq2aFXhjZs>~@3<;2D_ee@%qf^JV$9(F3m2Olw(TF$uOKw;zCqnqV~iX^qgJD6iz#O{+WqoOdS^9+B7}-Z_~h@a(H>9c zQO7lCkES$g4eSl3MKXJpw#aN6ome9#>JzBdTCp1^N1s?LMj{m1pb!jwDZCK;&-&4y z3&l`4{EkAAfy49z)`_<{NZ@WSbu+vIw-qgYqS)k#Pfy1gC_o=D9$ptFBS+cpTCc}Pn(BHK+- zo5T;s{eMv3H^mI&S`C%G39pK*&`IC~zERY0v-lCK+NYb*M2%cc^eUwm!;r?by%@GS z=(NmY>1P0qbEl|T33_gS8c`y8Va(4e5na(O_LYdK#xGUWaErj{aI|C##?maR*&>GE zALPwT#cbnhC1sbwJ^oC4N+EqOT`Uz{aKKkxsThNh-fLUMAmhPMTC)`mw3YU4MT;Dz zJ6ll|cMg-a4ZYwcdUYG1V<}@B)8jb^v?R!tFw?zTc5gcKTvF#>IwYm5DyhcP>z4U1z+Ekf{he z#f(Y+z34sS3n!_mgefuPepCb-7c;5%QSl1Kf%Kyo$$hEpC=Ar;lcVsb1iE_^MM@@* zDv%UVRFxQKe4ar&t5CGt8FaQvw1HpY%mFzE)ISD06R6KI&>EC+4BfH=Z968$8aI;Z zmtzb64(i_o{YBA9G zb^$%9784M&7;{2QYkpycDr(mms;C!nh(!A9e-zbL@#_iEE8O_`d+Pp3Bpbioq1}(r zG&A{K9M?Qfs)m@@@pP>4J=;9Mh5qqijiFg&WYu~4+ zpm>`3)H!{WKE+_vmrgxJ59m*io??izQ`9p6=TP!9n3+P`o?*c2LzkY38JOLBJcqZ% z(#q#pZj{sK&&3i1Oru_ix!^nc0+Zh9D*E|_z%7E*<97`Bv+0fBMR&i(RjLSxvOF<0 zZQucH-Sv*{P2|HDmGrmY(WaL^-efb|8#h1R)XnUu&)781JkcWZW9AEOKO7uinKoQ? zs-;tR-P{QMCuC-)35JP_UFf=DhT^@wf!jy>+jR5dgcN+@bh|RE{d3KGjU80owk|daZ8S$FuTG3M+!3@9sQs% zdjt5hFo!~6xM>c8ibbY58Uyl4)0}FYdXL(>o5Aqxaqi|=c;X&+bD7ocJynbzg%s=o zd&W_mhuIEIw!#Cp;sOtut)v=cM%`Yj^DqMu321GZFC$bw)iRG@AMWdEmSYY->1oE{ z?y(N_%_YX!w`p5_v)DMlgZg-xe?gbt?gcY-sa#4r~A#pQAR^r0O&{Wv@qvmJ>%2TbU;;cOLM95U_CYQF_RJe zFYqz<7}txahc6xz={;X_F9x-kR%Qsge7?+b>2NE^iJ~^G%@X6rS~}bsoNjzmKs9a5a^qY9rTdxPVcuRpG{$(k;s;l0N>BXIUT;wMw&tcbqj2-A zOf8(h*o~F;&&M%Y`k&myqkQ_RtvMJktNi`ZKocp;AJywlpCL2OtfY3>&b8Uz`_gf}0 z^=0-h*soQ@{bGLUj;o#qJu{0O`p$|gY3?gLVP9TMo_j@1o<~TMM|gm$n7&l>Z;uu} ze(lubQtaGiO5=Q4MfJZuLPqL6DrzGvpLzzOF7=05wtD)3ipC?Xe)aTw6;V;vkM(d` zZr`!i3pf2@MV|@QOQIrSiZxKjBD?%`E5zr}D7DO0vemB}zDAF&sD0gf$0PFd4r+&k zovJha#fHVU=B2%0cp<|x8UFucts5EMl5WkiTKMF3SK`((+df7&Bky=C#O?|jUT5?d zjJ_JG*d{XkUkvX~^W!0PvR$F^S)enSGAIBe^QjDI-_i0YaU|y_5Xf;^7Y<5ks3E#n z6K@4$B-0bDsaO@oB|w;K`|0E4(X^c`tR)pCSRr^(RGnZA_i^n21G)Onvqg3am<=Ho zwl6ZdEc%j#^rmQuE@$*a1b1Y5#%P@~fp#PxRNQF_t98WqF3aD{y!AF0w43pcqvunRM0?gMbfMCr&1dv}s+QAId8NkenC2 zBA*Aebd;}qDRJD*v{YtG=%(n$sZ7gddVlgxg0`w)1uus4%e05t42qEG3E>L;nWsWm zGIuCGgaNvHuxisDD%0*TcULNtXxCnim%v&BOWBH#EP#$&&ie$H8!km{%c5*&cw?ng z>kBsNDGTI%5J(jak79Udvd@FKX?A6Wt81-gamQJlt2ySd70U;y8oR@-xR}LdQxU{r zGgUqhqwBdaC3Ord-N#gIs1{T{uIK^2`EsU8Mn_P{D+9yo3fQdFx!~)bv&UhuG4coYh(PjAD2b8-7N+1EEGxwKQHc^h zh^gWv6@=IBq8&?NQd7DDYWbSZHw7k@QCtdoHiAAWP_gT8ig_|uLQfP^GN)2Cs3Mn4 zQt*E%DlLZ5*WXuwGS(UIf)^?H9EPVb+=BvAQ4ix-TQsA0F#6IgrN&i+Lk!M0Nw<@IrSgQQfp)3Qol8w`>U?11kJcRMdj4!8{G*sh4d=h50 z^>%*!3W{rtolRHLP)`%-`!p=7+T)`zSdw{AsoKw?CSiD%s`7AJE2wg@3`d_BMFHtp zTm3anl`4~oO-yEzxSTT6;aPs0l&ow7+ZX79+NdSLiyGY3&$&k{z%YvkhSQ+xwK7)eMhfI5r~F z9M)PyvuYjEs$vRU4i{^PZ^&S>o#L0nnlufrl?1KX+oe0-r zZ#JXrlXoW23FQiXUuD`lMo&jX7v6khDXq$cH)9sXqfZJ)U&gVn=;lh7g%8bOCtk5k z%R(>3o0s*-u}!Sbg1sN&8#8pEIlYykw|NjUv7?i9huwQ%w)HxKu9?}e2&ZE@rGLdb z(wS@o9mqzh)9IF^n)!wj_LzlLGu00A&VkCk)Hw%r(BaBRZWf!}BN7F;L`;Su-(4TVf9R@{@B`!}ZANZxs%ilT@-P_;z} zOeU8D3_>xa?rfSbsobdyRFN8wjWbwQ0aINirQmomHy4+a|Vr+o>98bf;RGt*3z1u<7PDMLdOx$6z%tiR)4HYEXGorlcCd)zy`$3YaRE4oLKz zPn3|$jNZlQLb@f!^G!swtXkC9n^96ygc54GXQ1xJw-F^Hgo3 zZH5!eg1^2~nQ@yX?_~Ic^$Na$;RhMMn5!n1;iniro^C-6LM`6wVDC5F*Zf&qOMj(p z6h#1y4^U#(fp{Y2uY-j|SL9O&=|y;&Mv+ArN5-yG`r(ky)G$Cvz?;AIMQD6GRTn|g zKV~Wobxbyv$);7*7Fjbp7@z%>CLOYZJvMU3*hoc(Fyd8Ap)UZoT#*heF&ZDXdV0jh xsAW%VMf727xEm(+;!3L*zLdFAX$`_V3-6=OELvuRsYqt-bVX*%$h*qw_#d|>XzTz0 diff --git a/progs/poly_struct.onyx b/progs/poly_struct.onyx index 68c968d0..c3b78498 100644 --- a/progs/poly_struct.onyx +++ b/progs/poly_struct.onyx @@ -4,7 +4,6 @@ package main use package core - main :: proc (args: [] cstring) { imap : I32Map(i32); i32map_init(^imap); @@ -12,6 +11,11 @@ main :: proc (args: [] cstring) { i32map_put(^imap, 50, 1234); i32map_put(^imap, 1234, 5678); + print(i32map_has(^imap, 50)); + print("\n"); + print(i32map_has(^imap, 51)); + print("\n"); + print(i32map_get(^imap, 50)); print(i32map_get(^imap, 1234)); print("\n"); diff --git a/src/onyxsymres.c b/src/onyxsymres.c index 1c650f5b..7257eb85 100644 --- a/src/onyxsymres.c +++ b/src/onyxsymres.c @@ -569,6 +569,11 @@ void symres_function(AstFunction* func) { st = (AstStructType *) ((AstPointerType *) param->local->type_node)->elem; } + if (st->kind == Ast_Kind_Poly_Call_Type) { + onyx_report_error(param->local->token->pos, "Currently, cannot 'use' a polymorphic struct type. This will be added in the future."); + return; + } + bh_arr_each(AstStructMember *, mem, st->members) { AstFieldAccess* fa = onyx_ast_node_new(semstate.node_allocator, sizeof(AstFieldAccess), Ast_Kind_Field_Access); fa->token = (*mem)->token; -- 2.25.1