From 0eabafaeba7067314c5af04fea51aa9796a1a793 Mon Sep 17 00:00:00 2001 From: Brendan Hansen Date: Thu, 3 Jun 2021 23:11:35 -0500 Subject: [PATCH] bugfixes and changed how compound types are parsed --- bin/onyx | Bin 371240 -> 371240 bytes .../immediate_mode/immediate_renderer.onyx | 16 ++++++++++------ src/onyxchecker.c | 8 ++++++-- src/onyxparser.c | 13 +++++++++++++ 4 files changed, 29 insertions(+), 8 deletions(-) diff --git a/bin/onyx b/bin/onyx index 934d7e560aa0fbce51d72f68cae8e3e04a1f76a9..92494b97dca9749225e652172fefebe84d78179e 100755 GIT binary patch delta 59843 zcmZr(2UHZv)8B4DLB&Oqh=C|cQBY9~C@AQnsBmJ=;ml_Qv!Vi?>$>W>YMKA$aAr~0 zh#1i`V$M0tiaBBczF*HQioEaMliumB?yjn?uGBqq8?HESxZ=Fsnw79RYM~PUSshKY zXQQ~|Xic5cqhc4{G=8n(7dC70CaCEr(M%8 zWHpzUWvUqMbE&TjQ)zS|*N5~EXS2sU z@D@`Hy;n!^UDpi%u5Rzy`5IHDW+XI=)cWG*T+~Jdnf!pA+AUJ0lFDB*c&({v z_w1?wOWYK#o8avyxm+{!T@&QEPOem^+5=i?xN}5mg^=`cSWkdD#6}jDIL#y>(Jo}Pi zB#M)l3=2`Y{*u9nV)`Y+we^*F|4W9?X!E*cD8IpzyInFg+E9_JE*ZLQ@bbK!rA*oe zLM2bQDB{b+pa^ZdAd_n@<~)#PSiQlEFUT^SLZ{JLhUa+tBg;@~qo+e@rEjVMfYG{1 zeo|PLA!1`qhf^2jF;gc4X}SK(MZ@14yF0Wq*Xs)4Q!g66ZtUXl{DJ}>QvmOL(a`_j zw)RQp`e8rJ<7_pAZ*(?1{kObB19MZCf}sXoFgR@LCoO> zzqDYeY3G5elfia#MF)Fxo35ZwgwpoM=JE~~&MD)KDd?AX&M2neyL{HLX-g-EI_CN#1@(Q;8eFz^b;vxUj72%- zIX<6}$6B_vlEV~pTkC>8+s~w(-@2c3?~#TXJ6iJ8Q-+&67J6o9%0r}V!X_#tvrU3b zi^1zT(xyyD#4Gl64jngLZ^pl2+G#%fu$k1|^ z8xJ~Z7_uvs*WGCNv}+?9V))>ifEhsv!FkD3uyuy%+!e&KU<@CB1ywW~Hk0WjP*rjQ^kJMt7EcOa= z66|8IUB4I=(pqD;2sQHDXefT{knJgD7i+Y~q(ch~S;x-u?pnkDj<4k#cBeHxvBFA7 zvh-gges!wB|I9EKiyiWa#%S$eZ@=Kv!IxsR&w}%%s)ikBI`QFm47O)$^Nm*wQD-mk z&@~3ra@rD=ww9T;WMrA|8o6c;nq3zAuY>Hv#%{F}EUcU{*pU8W@s)2 zaF-E=QIZ!MnYLJ(!?^t%L)90ayxJT??2DRAYe;#~l~pl3deMkw8$7eO@y^o?m$N;1 z=yb#9>>Av1x*_0YSC(p+{<0B^GMsv;<=>MHZC;J%d3_BRU)ALnOAIAn*XHAOh9<8y zf^Dy>vpB=S*W+ECX3A6!*XWvr!X6b{g!K{p+S1Js_oi{_=)PjvgvIug?)EaQd{di+ z7;d~7&F>}~;@(E`=RFPdwt*o2ZFO$5&|vkh1KVck_HH0wqc!~Zt`~b?2z>vXyG$`S ze~4$R41+$@=2h0Et^P2HF`dEllP~LSX#VL4XNEM}&#k$`#XrS-Kt-DgF-eG&)Sc3X z=KRGRV*3%&8*P_PYirMJb|1ioUjc&I=# ztl31K8b>xZ%!l2jARAVnt)#&=%#SaOH!iSY{>&kF7|_s7^b@ju8ahBKHJmP$U|o6O zAPO$YcJbmH=y^%DjW39!g{4>*zOW^IF2!b+n=u|6A^EubUfHv71QBYtaFz5ShL+ee zcNRwnZP|LZk@}Qojagq>Uz)|2?AcG5Oq$+;imBNcHp`f#X0tiJx03AaSvR)aIMkk9 zV|@KgYUar5@~UfTsv`^LW20%eBWuK5=#wL>%-&OZCw7R{qMJ^5+DiFOEQ<9vMmaMp z#v3=Gn6iMKLNm)UU+!<9-DR19M>eMBF03A#PN^=edg%_s#4elIUyvYW(@_`Z$2=+9 zg;iyrj4tKabI#9oBUXVqRGp5M672DlwTcio$l2IX zb(pu;{6Vjkne}F5Odfbt+O$)4m--&RSK=kZt%^G$-W+oJ4^WA86 zJ?70i(yn@t)#}E3_1HPar+65*G+^f}*jySP&f2N#i@gqo=^`uW-Si-wm2F>2?Un*X zDlo`!(bPSno<`z9=c22hoNt|A(zpMb{3tikBRRi#;vLwEF`Cp%373<{Sz4)^zRv!y zZ?%H{(x#r+p9;a@r6|jrId$FGOrcCT#4S7L=gWIQql@?U>!YdSSXqPsiPa!kL7lrs zbUCJWn~VzCdv*tKa7OkO(a{mVlXF?QjN}Iv*+(TOwb}cn?GdbfnJ{}<6*NQ>=;TR$ss#IJJv`O&0FqtPUUWN>MV3CdR1EBhPUHL}I|_`#>XoEFqSz2t zm5xL)M@LG@&ri+J=qxn4aF+xChDz~diekQQgB^uJJT5oETzAEzU^}RXsO1-@>P^{2 z_G&>hmSq3eVz4fUtN%8EuhF_j(q{Un87t2w)0So|o)0QP78({?=3PmdtoNeO-jWu3 zQy&d8*te9cg~APKj-Qf~6WK(wDrNRA6vQ-?R6~^V6h%d|x+R9l)gX2^O^*iiH1ac; zIh(ddW9NYMXck(*qoJ5AETDuuXB8CEX9uDCt@6XDdUIA+okD^+G2YfPOHb11=FE#N zrX|gxm8#RV<``=rS+qbgpMpdYN?lv9-VRk4n5o?W?^#~vfpobA3sc{jpPwHC!MBbU z8mSVw#jsB5k#Z$wi53e7oMTuZTTgpp*t!yP=7|Bu`$^ZSZ%bAwsK5MNU)nxE)Yq5B zY!Q@0jI(ufK+DQvGA*l62pJq`N4r|GHYJ`K1k^-7sVbFe#Tu1dDnE-5?Gbfu#X?JT zlqDC3EtLH)7gb86}Z*eg{lfGvsZ=dvB>S+ zHTv%O7x+$02p!l_m~jn#{R6^zkt()fkx2*cn+4Dp@ry?1kbO>>WaOj#{Oo6QB!N`+ zJz%J4TuFBo&*y(W$LRZk7fJ4>ICNLLsicw+yX>t$+tbBD2#wezQ<-O48vvU2%LXG- zrJ@IIVAp-=SsNCYWOY*!l?SF+xg9(Q3*;fBeJ2YM_qkbdYjx^l0BQ6|vC>4nnTB$r z2F7RU0nAZK9%C}*S4mYMrG;244Fc7Lo+H{vw2Npk{qIAS?D| zw4wuxVGrn42iB-W#&q-6FHW^PvIZ5#$VWW{Rb6Q8#iG`@6t&rb}wZ!hR#+K=2 zyxoayVC7B+$-3x26fN~b-S=6`GV?-uNK3o0mdrpey1)lYqk3IgZPz>1W#GFg037-g z_+uc==*nWO*98hP+K1A+F3g?sy0T{FiYr~Ll`eiiySP!eZWup{Hg{va*gaBrXI|x8 ztI6Y+NAVjnHK;{*c%m=qpYE)8xekFcR7Vtm3i>(ZFtY7|Aw8*c50+6bxT*|Q1BHyM zyP2?Ps@0RtWCx8$da_vNR6jrlYaj~kQH?ed>b5=k^kyv`Zu(oQu>G4qV0V@7j93I1{DRcM&_o_1TBiT=OTMk zsJ%+j_AS5nFIlwxG7xB~{bH*30hv0u82y+NET(fmcG)rQph~rWy3C8$vg96@wo`6D z7V28I@-KEe;J2BbE>bmW-Jhi(^10HVg|XXYKY(>|cQ1Bxw&?=0x39wkn z7bvi?q<=ri>m~8GKsXNgK4}uYhraprp`p+nH5Ub_nfyM$CZN9rQ&N8wa%qqCYzW#lj2TuT+Jl*<(}?$DcOQAX^w zLkF|;hLw=vLP}EeznD+WQk9^(^pW1f_6wZ=mgpV{(+SZ<-dEaMRVcOz-a!JSgQyFa zZqe$$n4k3&H<^P|>GEH!PUwh=0x+yTDwWw{wC^!kO+4=l!oX6T3=n0lOoL>EQu6FV}`R~N&fFRmiUeIGA~cI zG94f}$Vmk$)iL@$-a>ocLn;!r)s_Qqb0m}UC3TME1D`3UMrZYlFrfg5jcKn=R$KvLQ_SI zgl2qAvq!R6Tm2m&Y5>&eD;}knBiX=!1qhOqs^k;a2=@{f3Lb0+4@^yblpQ^ z^dVZBoWL4bKX}Depn5DFPhbJARaxIcPVyddMPasYk0SO?77JV5K`d31AQ6m|BCF~f zZ0=a5NXNKrxudt-@uNf~Cb7CcSy{>~J6``j%exnafa7VvBo^Q^#SGiC2<*zjuxn_a zfDJaomMH=or@+>dkw_q$B-Wh!mr}4FlEkdtroH+dk&`AFkqUB$ug_?H5{qWb>3$Lm zt&)4eLKSgH92X*&oE*ybmcq|Sb(AEX0h0=|za%xD%%Xj?=pcAHph)vZNuH#EJV{mB zF&PxpHN%!G0^3o6RSAX8v5)sxrzxv+Rk*UBnj`}wIFZTBvr=>sP%Z55 zPmCIfSsJmyR3?Sh@Xb1-AhrX1D?Iu;SX^{b)@Rp4ik-&F)i%K=GOdAUCc-^zm?`GY zJ&SZ+sdQF2;HXe_J_S?-D;*T78bHNM#fx-prgT-P3LuA6Pz76<$|`l5h$SeD;vvLo zKT+KN0NYvH-w$Up>M~oi4Z(@O`=~nV^*8gaG*Wn5h44yyD9@>AAtcrRX0?)JkE{?(PX$KdNBq4) zyzK8{f>x7PT)GXY-w-JAyAyq&Xgdc7rL{$CH+@GSE6pxiZ3p`!jV)UH9~M%oc}ggI zRa@Z>SPBaeE*zJ@vlg=Nw*^%iZCIXof~uK@b&z9c*=dA}quS?=KX5H32tZxPM9Z=Q z(&?n=pl_?`ihSEn{5I+7?R2)KSL@FhKo^$7Ema@XLsPtkFM@7w@hlv6-DYn))TsR} zy`=+#b}5w!`)0L=^0lmS(@pn(XJu;U!(Es{dL8q#`TM)*VU?qzbR7%wiM$OjB^q_v8RoQgRPZZPt}HcX z1FdsfNscp_m%2D$fm7Z$d4!?VbSA43xn#LWK3HBn2KOUUr3zQ4UjUM}3`pw2@(}q1 zXTa}2e2c40!#<&7?`D=7i)Pm9J$C9nww2I6-N}V^&t#Jjchu73q^lEk*R$m;$(X0d zX$C7sqi3@=2*l6KhHHJ0-il%?In6;ao9c;TEOi%!hEnFR=ByH3n8S93^;jg>e2l60 zl&X|+TAk9Ngi2MfluJT(@NKxV<%+Z>stdO|QN};W_6((a|1b?ZO}=vx7OkWfbKx`o zK_f)bkQU8Fs?v)Nh{Brg&Sk!A91S-x2XZm6(yXiUyPo(RPSFN5w-8l6>`z)~U=_nE z)9(l_f;s+$;N1nkw{|XFxb+3SHvpwAZ`bERqBCVTj3b)47hy~1(=U$`*3lJDRB;x{1!|2`u z;PHfhh+;9h5{iiwDheI7BOIOOU!){r0qTwyxhlKP9CiBJ7%eoFaW65SQpLs}gFug^ zC#%{0Dl3k1)laWDS{r4pP9MXh)yG5xmFO6)i$XdsU!6XTNkfgV*RVPaLHu9qSWW7< z4up>rzniic+O>`uSs5CJSdfN_PEmQ^apx9ceByC|W9QG{)270R+qEI)x zn0*kr_NH6eX6&aATUiIBnPavgFNl=kHjExko42uw{KE=5vkhCPE4|&uZm<+Oy`431 zZ*~Wc;$AEzROX9lM9?_E2&sok+2fZwP~{!09ad_>4mQ@c^(sMmNGyuvR}7I@(<6|H z-mj#Fq~3|+$t;T5$^0sASS~Qe?Jw*}Igne`5?4opgnK#hKK-+kxv(bm?@o5ZbJ$_@ z*M$sPfpMoCcR|$H8Jhc7^z-jMT9d}w26`TVffXql@W(NPsrDClvlf{7ban zuaRjuhU}-$F4o-r=jawhP7ZWyKZ{_&#tH|ZwxE>$JczA&lKwu(`k}|0 zgUs8%47@nOp5RMjOpQ+CE;U75{2Rx_flC=`aEQ6G^VI$jj;Awe+96g6$8Bp5v4%Lm zcyfplR(3)LZ?_;D`53XmK*%3sR9u#u~D(x-}JHm8qIQ|T6mnb zMOx|K&VI7h}`mm4d zsNq?*ja{JEXThKr)ax8;UTnl#k$^DnJcm)(0b`8|Y&Ju3@#sZXleMSM7g-Ozi^;WG0q(R~HSfh|0zbUJ()lC_i`UPdzS zFjc$4F1n|W7v$I)mvGho(#3^9hWuEDt*j4=Tna=kP^GJ^FAlO(uVU@*)1Iq1;s1*s zTm?1hH2WH>&)?_J*=xA&@SOTyXOp>47)jS*j2ctP8>}<(k^OGKS+b!0H&~>&19Ag< zwJ$Zh$>u>^?%ZT6__u{L=@zJ4LOX9E?hU3Nw_sUP8N~eoMDsMIJV44tPZ&=72JR$AKz^+f7(E&pX0jB zJsK)OkI$i368Pssz9wj!X_RS##J{0D6V%%pD))lL35kD!InwCA7tl7o)GnJX@%TRR zcMo4apDdI_gWh_{di!0UU{*u2ZvUx?#Hn%E0oX8TAv@5ymzKQ*iu>u03SU1Tr~J>}VnaGp&3D)Z*f8&K--l?=JJz6XrzIkqet~&9;FoOG6?3E* z^+AiUV!F0LI-Z>4l~@OH%D^c?w;<_WpY*BZ&V zP+wq0lJHx>t>DNC;nTKp7+gPB$ab?J#Pe(Edk*d|l@Qg?A79x%Z%bU1FX$%-{V}&- zOvskVE2^Y2#=+m1iLrjv?gwtyoTgnrSO)A%VlG^j`o^8P5QDO{+R9jlpvWKQoGzw-r9 zw{saEEY_6qZm{*;IB&@!Xfx-%pnTO9JOqATlm!puC8kq%&fV-fBGatV4fb|7Az00q zn$v0vUJZK!*Z3<}J`p1VPPn2X+KkrbMYP402e4|+P!VY+zYLAhRW3snEP1rs8#o^7 zzxM&{bog zjo$L`lm;hV#Vjf7K~uWWo?@0eYsGb|ef5;b{j~s*F8o+2ZMA$hpW=n-BGh{(b&#u* zpEGmRnv$Ow8?9>^M02v4lVyauOjFvwk5vze*0u`LBI>jApC-4eI$^{;Z zI5TkgAWO%rhKa>Rv@*!uw%&?vA=X94MXRoYz$-$mGmJG ztBB*PFH+rA$|Z?f0#DtjAf2p{4aeW)obl?^`q5Co`z8W0(*YSH$hjCm zdM%g~FW!OSraYvbkXtGsLpGw%yDJKroNRbmzIPQ>v*9j{{}tITS(d~gv3LTP1ov8M zUnYlERj0JX#4%d0ba7BAK>h-vrt$LlDX4;nfgV;z=?8$=xWZ1ox{d zGIP=TW`4-q02ARXx=T?IVADIKFMp%8dN;By%UwG=OjQg`v>vJgB2yC2n#^!_j1MV& zk*V^;4?(T0_a#TXVIqPtMMCO9B6VYs_!3F4W=tf&%;NS!dXXgbkdu>H0Mw9nMdYfg zQ#r+*U@qmvX7QWyO_m93MJ5tGg*?zuNI{@^JIZ?z)F|7r#BxOnKFVknAkvEoNp;o$ zW63W`ad6xP2M|5$HHa;%9@RF_k@QGR!tYjOSe;S>D$>*dGKl3>R!ZUKo-XvDB(G*& z2Z>gJGwmLse4n@#GhK{x2{`7}C_ig)22N1|tbiiDx zWtSrEfoPQK6sYjG(*jGmA)(nLKYwz7sSM+IF0r?6uV+HvfEQlJD$kB-_yT#+?%I2q>Fak%efr- z;NGElO+yCMAeM4!Pc~(^C;#U*1(xB{EA$&zpzd@bz42SI=;F%5#4(grhWm5RcJ!kR zY>sImRkr7i`P0!fz@BS($##@x&yP7RAYg{zDu0g5LP20MkbI^5^;4Gf7Fa=!Qa~M=1 zE;4VDwnBw{fVhU`cA}n+n60vb#yWBxcWFb#ocOqkXGORH9VP}b3pWHiMqBl$)H9uy zIq{C%=MTzp;>-Co+`@O}wfNgOI`7QO^VMT0+ZooSOq{&)?LQ^_+WEqtew9FV%W@C? zegt(X%l-JN5j3qVpTa+#BO4d+tilMY;lk@UwZUz=0@p=c`pMobg~!q)7YseAHLY;r z)p^)l%5uRFhT8Pqg?sV5R^(oeH)*`_AIPT2e8^d9WQQa|jo@<9S+Trf3rGAiVDE*- z2?b(0R4T6K#$mL!9QQ>wp?i7mV$)cN)qN>^6TQah{PrBG>B^-FZ1^uR$Q@Q_K&k9d zs#6}MydFY5%JWKm>qeSf9we7+ztmf3RBCp9~p3>Bcyt(7W zu7X67Ihm;1FX9!cVRL#=k@v395iLJe5Q3lj@o;&yZ-Q@2+jP{u5)Y_QGfTEsFsRrp zZ_?|dw{og)8ZeXAR^skSb#TuQMmx2R;I2LdSDVEU8eP{QsVeRYiY9MpYcy?cBR5G- z=ITRA_5aM(dFFxeR+oUDWv+g1uFh1T7n!RsnyUjkz(@f+ZjdtgKBYcomZ&bssmZ>= zHahIiohaFjJE%ti1+mKRKvn8^lGeImPtLzeCO5v2*FQ_i?z}$l)=WghRk+6tdgac8 zd0ta;_uy4)Wr%x+@K-=uin!n@G)$?1g2xkKu-bypiPqARmO}p^*&;0A>j5;`gID0H zPPE(u2DnvIy6C}cbLXaH?a3?ip{Z2elPB>ZQMBEYdnN@OGpkadr;Ol-ON^$SFw*H> z%7RPIs7V*zqTn`S=wf&lVuIww$5y=Hc4GcW_u!2DkuLco?W8q*1jKQ7(@~5gK=X&Y z13D3})d6O>Oa5>>X|jN!I4@pZy%dTYS7H&<)f3RP%?H;>@adfM&HBe_=-`tHqrZNCY{kBk?xEHA%O^~$`ty;nP2J8_-!xk(3> z=!UbIHh+??GStS%wp7K3H|1sHXrvFnSU0OXA}&juFvwR|!{n&K=^!ejb(Xl3AGV{4 zY(I92LL2KYjSUgJu$tSQCiwDNH9oposP;k#RH>KLDOs}4kHU*~V2~~m7p=m&#PDCC z63}?rogVq}vHVCk>goqCY(qC1<%d-d>uubK7jYSX+=IURgS2HmC?bHDciW41ZJ;Ff zp^#E);9|A~76TYGf%27l_n`3se7MKq<6BXIuOt_P!Zo_sP-*xovaP~9*=_Na z$J&Y___Wl1m2q?xzKhu}YWh2l|8%0TKtwk6TxoD1uUuke6xy+}H9OIgKwiFH!y@p- zI+<78N!V*$xI(`^Y>((y5GDfKdmZU*AXcxl2i2^`H}K$rbhjEW>+bF?qvatN{c*kA zB%MG~T;XEar7q-H9ahkJAca=vEqKo^lv%vVqFvRwpS=|M`(zK=)9dPd zCLh?DCIs=iyn1Ic2Jz1PQYUf@=G86YnsDmr$sGBJcGM-9*Qr{@*#e80*j8Rm(~?|S zBk8QZIiWfu!KBee$@&p%y1p?T4(8?f$F_7UnETpSY5e=t2ilTD4L+Fv*^#EyfZBap zfi~9Q-T6{SDp8ZWT3n2fr*C3!zWs`Tx6&kaWYhI7dlXnyYUinbf+G# zRqaZwNGd&&5;_SsO$?X5gI}_Wv6PjBRT==~y`r_+5K9f~^DB0jT8pZ%?+`@H`@@+$ z8$f!Nwx;F{c&^Q|R-)Q!Rx64Pgwe+~i_t3CK> z9)43xs^5?Y*^QN}!d5xT!>@Lv@eR3;OZkA`-5t{|!J4afw67uevI~`gotWG;q=qBC zY{XcxSC(yNVhwO@zz|u&`OhXGKCkchl%2e7yRnqD{{;KC?sP|-Ot$d54-XdAD zOwMss|D7QOP;Wc6F3k()&3UmFc-xJy=WU~n+6Z2W@vvyx*qD!xd#je|eTPCiSPp$; z) zJhYYvdt^-wn)C3+8vrdhTbTO|M85*0LvY7kUUS8b+2;2<;dWt^-W)zhr$+R#IgjTF z^{9CZ9$5BjLu?eCkb(FU%J)MebyhAvXjTjER;sViYZJ z4NF2zjmFkU!MbGz;+$)Ra8mRkqjB#67)(YX9nQ6se$*YK~Nn(`p|}-;oTf4BObFwIf&-6^fsQi z;`i(+ye%qE*cYnoW=|QSGOD1mE$`(3srq$47VnH%`Fqo!?f4(wYeQrqS|Ibz8iYSx|yxR1}t z&5zXec8S1|X1=Dbq)zzgGrN4!4Kld5#!LEcPhtL-TS5U^is{-nT+PIo^_>VSoE^Q0{u;MRTj zpgW?>^q`U*c}S_T9=L%t2>y=L_%p?HW&)rpl_ts`XpSK zn7XefqzSn?^pTEq;#ERa7y^745G+qR5Cy)ngL(B%FWtb0tjajsS%V!Tzoe&Y=7NU5 z-N>UexD@)4ns(+@+{R-fU}5(Y3z3#Bz~c1>n$sC5U;03sJM%E_kw`~lj185{j2tAM ze_PiqZ?f$I#?7fj4Z2_n`cka{Tw5Ae0c!bkKpb-_EUsyE^@ueO;c;oWp5WU18 zkrOK)C_+kxiwc;lfBflC58j@K`jc}{K7?CWqiH>PlNxP`A)wGU4aZ%(Ocm~j0eG0T z&g#@taoX9;?n8unXj2z`EE7Lk`DvZDJ*DqGc?15`it6^_4a3*^!{gL<4~o{e_rr9{ z@rZ0_GhF`Z;;oVDRL{$gQX8B3;9X?J80o@B0tAo=C?xVFV=wsbPOcQyo7X767CzH{ z7-V_vw68N&*7z-6ottS%b9?gyXJ;koDJu%?3+3KO4Iiq|hgWlL> zi!}kC+mTHBF}WAzX$Sho(FQV_X@vBV=0{JpE*-$NiKN};?KUx^|lY~(E*Cg~kNM9f4{>l>3#X$)5*bk~Wm_KptjEhfE!JlQO-b2FC5@?8<+N;y4{9k;f zU6Aashs8lUAwqvVrL%v*Vue;9=OO$WKVF(%55WS~|4PY2k^P!-pKOQm!LF;ntJBZB`1z zKzj*d>R8LvHvmmi(p_pa0wLn|lGJGgKgXjy$$upGthDpL# zqtDtqG+-nT>@!fn3^&6>|AgrwU^?LvpPalS5>N0n_=zbuvVjY zoD3ax+(_R>@=&||_JYE&+xKL?-ML4N6CmLCJ!ohGHbR<_HYM=q{J%XkFOhfUXLi$v zMD#jhC--`UTf5-)<2zJ;6vFfC#i{!!-j7c!PNzn}kjGr6_oMhg{@@aI8_fq+Nw~yS znN6(4n-w@6%$}B}^10%RotmuDs*!@KGd-2t5aI|hxDB;$&-*GcK&C9<6e{g`Dz6DK0I z*2tf>P2}Utzqb{*;o}Vjiq#}4wC^RGQWQ0bNAaU2Y33w2^|ySwNRx! z97JA0of3#86Gs{Db~Gf3H?V$$lO&y0DF@n_1RdY81bs?^6FO3&7L$2E$EV$-JHCSH%@`e>CjBd>lDX7Cm&f|Jsq`RA}g>hiKJQ z$js2DbYUv;`PbF-d@AgKsRmU}2KkSQ(comBzy}wjN6CP{XGOzO_&uIyNwKM1%ST$$ z?Nr{^wj?yXI6R2O0f-+3{mp$SVH&UHv1$5%29yA z##(rn4o~M5V#+iTXd^6+(wbUoVIIPUT3}_gM`ZtHJWk5mVYParE+SsK0zD)?hJnNv z>(<@W6SJekXMBPPFkf)TS_{D)WkWdDtJS6Q` zekY0FE9Ku*eFiU9D;WV2q)a8NeG^{!&6g7H6=Bjym;p?8@RXP}Y|AMcFoQRwDx)?)$D1X!xLahD`+|{>>eO*!lB$K8aRP={wR23vM1#Zs z(=Z7!tMm;Dt6=R4dSr^IXvZ#TDlSt@vsO_G!BCB&2~h0InaJ@VCef zh!^wqVbTYD=`tff!P}+apLAT@?iY#euAo7FzcTFW39j1bfg$9BRq*fa396>&wOywp z-LwA_8ekXvFcd~?`w4i4AEilp9$u#%I?CsK+8FN&=+_F*G1!N8YG+Gt`5lY~w}kyf z4J4z2{4p4-jT!Vw&qJc#=gOk-K@?i2J{j=I^!QSVGy|Ij*b6nd4HjCXYpcOp9y~5X zA3_l&G6XXP#rfB1=q%oiCo#G(3r^0+)AW57Kh<*IF=(H`-rkXQpC-6Nd)VOp2c-X; zfQWYl?gQi$OZ@NWQ4ZQo;7NowBRC^UtomFGjdz!De1{CwkgsGn2kz;ibn>4A#q!-m zZRQ~Jc*R8H=0K&Tr_;qbynMhr9MCAsFd9mrV6cR;K>Zq;kVI2j>spc1Kitp%f2h>p zWYSuxc1I^HXjOox76z9rsqa7BCuz<#*)WK^sZS3`NLSXf<17=GhS1hj5Ch+mma>`;%Tj%BcLLYrA@ zGO6TTUa>)fXxF##la}P?!msWMA^SD*^{ev87r*`*`7C}bYhLdl^_k0SSLGN%S!F*A z(Ng;-k|v7uMrTI3$n)yLDgsFAucDK4k??N$h46~0XTaAS%&iOghC=qW!BE8jNNQQ} zG!Y+*N?axlze+6)+^b>20r6H2jsyj1Vn65t*=N{X-=B$|nsNwr3`7jEl=QfMg`}|Z z#i@CRXsdxYu3Ys>Za!Wziu86j^D4|0(<>Cs*)QW$CWoBn@yhnS@F)|8_yE!_P0gj4 zd9cL8U(%3yJfK7Z)>laMW=mQ%kH>kARf+k;SK1OI3Roa{Befuq(z-}>Ey-y<(l-{2 zTFggcxa)iKu5}lhN4=kt=0o0(eWFeCc|F@^xuPS&k~h+XPxO91_iEZ6{Dna67M~v} z5Wa{*LVrpXFn3J-poBCWyJLWIdUp0J&;X(`kNmt*}*9F){C4Z0?ao<=^^Uwvu z0%d#Ym0YR9E3Aq3BKkij9r!L}-cNpjiM#U-dP!Uzf?g_xSuk18Z0IHLy|kE+BUqP9 zrwHlWc6pRTNS3tvK<*1+_^Rbn_(JYj-39MQ$7mnO!^xkVMFgkp!+YSQMyG--CF~Ik z4UT5Nr{sk^nfLuc){9`fs{NqwMZ6u~^Me*Hf=|@yJGn1LD4h3=hAqZqd%n{`QO^2K z8KUg_outLw-SPry&yS}CPCGb19ex-~h$Yl)q zx?m}xu_$z1U)8!}>Oe5dXj1{~}SXuGLshAZ9xaKn$A+-_t zque1%ryq&UfCm@+vy)y3)gXZD09abOmEN!5qj|Cw4O)pT%HT(|cqQU)=V!EcC2!~!-^M&^t(RDPj9idEhY1aSBDKN{*(uWXjbvQQhd4KrB`)!{Mptvc z&_F^F*8EKM*YSpBKYSL_n0P;0m#F&Lc<&RCy-a= z3Y^m-@mu>wUrHr4eNPM5^IFa;kZZ$O`1)VLJa43#AL-G0-mGjBr494c@;1-&MymFa z!Z+|ZH<8NI=t_CZ-(JHA=QXeNOtZHW%Mqc#?g-xmh{Bd9Ee&oPPCAZd#K?{j*rrE~v+8d^io|K&lA zoNlt;^7L!(DBA(Z2Rsx@Ag-|b;g`^+re<(K%=C&W{nk*sO~^5pzd$okmIwk0B23)7 znoe$lqMosuK5l~WH(pH*Hgj*+!AKhHpAPn5`&YdpZ~y5iq{!7YZZlH3?N<|SQ&)}g zzl8W$1h&H00i(*T783hcs3{10R7|jN6#&FlPoP;938)zDJD?eWUm~I|CI>Jt@U3d; z!evr#;Z-U&Mh7^3R-J%>7zuXVvY6?h@Y?IFqV`*GWozbK+PQ^Kb~!y3i1j|N(MNnj z+{8!4X|$*Cy*LeB*v4I{&sJ{dx@jdqlE2B3)i*>|R-;58z13+W&DzSH?X9mVN-)8@ zKTKnP$>k>P*~)9wPkAOJSe?=n+XP?h3Mw#*Qj6#EmXtpMoID2K9hg>3q-%6x-&V`J z^80G?+Qx^fAAwt9M0wP}8?1|KTx{ZXTD`V--|NJSi*P8YW!`{RQ{@WRLj zz8ftg8@Y!ZwsSAXbr@3)BKixxEznK5PR+OTiZ!;Zk|*DaLhUSGgXr&~(RFZ_J^w{U znW2{6vhRd6Cmc+x<+Nx!_ekoc?gmehcR&u{BPPf{Hg2F&$ zl4>ZVvFpVRkzaff_X{gO%FP!W@|(ycY5nk(>g4~Bm<@g+e~4GH20>W-PqzfJVb5;y zdS-Jl6Z4rO#Qh#!M8R#3QA-b`G*6rkrxb0nvNaJ1jh3oXcG+xzfUl#i4!e-o%7eI#siv7n~;g;h*#&~OK z@^yNh#<%dSYqV?^(p^3yA=moKLFk92-m z-(KmSd`j+~gF;$DIECwrKj39PzIng@4+W;X0&_*cj8>XeVu)HwbGXus_w`hG&6WD@ zg-`Xyh5omfdsZ9doR{A+^@%!VDmI_^j1A_;=z5fao$MM zWm!eEjHnyvxa5lYGvLg$`M8l;MAAu}O9upr-Lt^fn>f z##tS(u};0MPF0fIPW}g(Dt)r7YVqkLDgKDyc}ORWAo{dLAK^aBm^)ONcTVu}YsB8_@~AJ;MOsICogsF}8|mb3nQgeCYc<|L zZ4UD)5qY!W3Qe9+JimJ40)U7wK3N4Qg9z_c?molZy_eiQVJX&by_{)t+HjT|hCg#i znt>L<#8t{@#qz5sbdAy5UImn}4q{vdCG3QT_(;4muD5yIAG>6<7Q+)n#3+Xj%Ga8X z0o+o6n|UO?KMbvcx2^Dr6RR=52A56FYh-h>CX3>e=0KXN?I1HA_c4F@M0`0qUlGQ_#j?-!&79HT#v^Zxw#Y2$_C zd<1jt4K=!dRY_SlbU!AOKK(dI@2#cIC!qxMj?(s%INS6&MQ2a)sH)>Z1G1==SSw-l zUy7yaJ-!rTOsU83O<5TfmI*c4NL4EHJK)p|nwg0-Y~B&to{4nB zu_Kh7iOA7#gvy`dqr$$!u_!dm}iw{vq7k-BgKTPLO z@qpg*;PaS2F(;#KDdYpEZUuhQ2en-jYgnxc0#2L>naR784!GjK;DlP2DUs&>K2cga zbw16@dALjiKlHXMp=Mg%Xg`@ALdnxu3FGn7i z5dP&E#X~E;)krHYp|O|zT#l?R^9o5z<`={jzZ&A`Murdnh9@?=1Wh<)5goVndQHSDqrEx!xrvQ;#*{eBfv{LX&XLuP$V3d zboigw{KnHuVyLKb6n&M4@)oBk`6}-FF5IQ?;=)xp`7L${MmbX1YY6iP%`MVD>i2bT zQM7%8&_`BdjoNEGl=1op=-74KbIlt`?l;64>LL2;2EuH^Y=W~>iLV|_n{FTjHhKqL zzX2`ev)^calXqY>UqWGk3nTWQv9*wi*#>HBS7-^O{XkkNSW zAY!F0%2TI1c(=iACjIXYALyEf|C7&e%)?=-3JbVIM_zaNU!@OjHuwF%;=Thciezhh z=ii(PgVa>Xjv!b$Q9WW~fjK?hIte6(F=$gYWuC6&?SRFHF zRG9wX)77)WEW7vn?sxy^@;rwVtLoIL>Z=37bSO!yCpeN=X+At8ZD>s10q3QxwS(wuRgWo zB`x++_J6x}JvVFD?&2-DcD=$e4(51{a6cPFYwt-tq>6nhYm(H~Z7|f@HTG@8uJr~Q zktFrSLFO(Gr2J$_lBP(fH{U$DQD4x6K#TaEaO$YbRrddgy;Q-!;Wi7jZKZwCAIzS%(h{7nldW{OJ-jlX=u77wN$2JGwQ00?kz9e!{UJF?Bi7Q@Kk##e z`&vrOEtkeGVS1DDV<+Z2YiRIe44Dt2==Nj$5IrG^YCMtpm-v1sn#lpb;9yzxneQ8M z#^h==Q(CVyb!Job=?wNRp%?w~MA{{7-Am)m(r+FKJHEATNUWCVB+{Bgd(yzC7`(c# zr=OlmYo(mKsN*y2Cr(;VQO~5}g@&!tmXyO8VIyTk$jr4~G3a!Bv+l8jPCUb0IC&?T zpW)YJ|6Nq!IW`;Jc2c|NxY*~8p&8Gm{nC`3)Zhg+2v01h=`W;E>A`5a{X#09rSWpn zt4C1tG^qp~O_A&!aH^5P?6RC{y~H3H5J$6KVr${MINJCUBW>4Z^x`G9d2%hI8n1A} z@nRc|es9rb&AS#T&h3Ry}h0ia~J2YV!RmEt4W= z(Jx;Shw8H^cPb{KS2HOr6*F7hOj?mDg-K0kvLim^lP0-J*=JH<8jMfRpebpn&G;E~ zAq~bs8m{8x1;?hfbu`N}sIdj(-pXj&VZjW)vkzrgF#;EhrqU{E^Kd%#Qzic_>!#}- z(wr9<6KZFbUFnvJp}E2I1rBnMWH%i_Z!2w>22_~t-II-!_DXVDa7zx9VtY{`J2}6U zYZ}$ClYf?)PF*O;{*sG8zfGYrlAI(ZPo@~7?7OgltT^BpK}YjmA;?;kW5~XanoL(@ zxxQ3kGTw%l>q;*tQ5Qw7F72E|%N5xlhh22CN8z6pxxMsxBIj1wh-61JvYIquBAZol zXomdE^(Imld%2~QJb^mf%YCJZ6X=}1++WHwfvP&lq0))*f2N-{o=!T*wX!rEFFJl0 z)!r{xlCo+RR)0}WVib*YL@1_5(FsSy!Z#|uP!`!}m-B)tnOUMP2Mim=s**)%i&VHG4vt3 zT%-Mr_BM{D-N!gL%vM^3rD3+xJN)EvBU|aucqH2F*Pf<3%T@A!ZHL`X-qyBG#8)w2 zV4uP~WHdLdAGzc}R|{`PO>@WvP0e9#HPmL6G0DiQhON~3HKfIDr48{7h7kM&9$)(tYEUCLxvE27zGTvVq~^KhvC_C7dETog)%}sOy2-U9`A1&U z`%5PyXqubcLK+;wb_FOLr!`WVn_Mr8Q-l~iJn53X>`DFdptG+YN?Y@wleZkI@@wv*hO z(fWL{fBu_I|0W8}!_zrf&_njC(+{Q@8l`f^MM+~@eQi7*nC@~b-IV5e$fc!U{3yXg zE-Mx8Pk11&SoM>Bn6vpw33Fl_-hZt5v>(sN{D=_V{e;rIPslH6^7&qos612){U{{A zJYE_%kP`EAs5M+U8|v;jP(;RsRxXmuJMiFWK0AOW6_7_r&2S)le%Y52jA+8#f?4PW z`bK{mSPE_Hc}TW*Xv#^J_NUziWjs9DpF9hp8SeEq^XozinX;on~M7zH69}3IM>^hZhU=z@$8K2zDYO8OQG2qYZ+oZqA zPu!f`h<~wV<6jlQcY>rmy(p@joM)k*oR!)YlihPPu7}WQtHtMA%+6&fvY6aVYBGQ> z6~k~{zb9K4rV?KAIw`Wpx1_JVSiqO`IaE;Y|N}#1mB0lcG&Z`V+i66`wuzRa!nH z)$dG>W#l@N)L967m%*G=VK6N#gLyEh6FHTYM@rRd(4?|*G07{OHkXw@N(BbcY9Dz} zmKq&IH}qYwQ+B5c<V=JWRUURx1#+ zkrtQ7!k~BM_@Bzl*X^VuttqM_wgNU+lxx{_Usy>liZ=@7>UItq*&C#^`FpafBp0ER z%rw!M4tB|OsWNO$m0&wh(6^bcEa+;LVSA&cNVt%hF*@^(nZh~~S_RDU7Q$>BGd*<1 zsVW#po$1BQmgd6j1T#%_rbsn;jI<+^R#uaHN)1AVg?DvWJZq*g&R-06hNt;4kzn7m zhC9uxF4vUCG!vD6Q5}s@NElM{8c21lsmNkGGu?G2t3MbAo$1ZY<|e`{^c(_u&L5q< z2_!XTEiSbC<6g9GG&(tw6^KS1svxil1(KLpB+q_2%=OQ4)ja;#6M0_FNR7AvYQN-kFixjbwj z3}-MiS!bRyQ&MN@*9CK-zA#(E44&QO=3f{DI;XDa#LV7$!s-AsZFMGZJuqK`geHQS z6*_Z?nLwTKsSoB+U11i@%oLq5*GG$*>u`&D)2s&Qm5~(K5EXdc0AVa9=#XHfI29<8 zZ(^p8&e%5ulTBy3F|#8;m?bdNLT3s#LMgjzi&B1WggLcwZDHos7-p|(2_}k}IXZKf z89$w=5dsGDxprkNVrG=id|;+vO)B3+t}5;Jpt8MjxlU+;mNEH@ZuhhaYE_($HASr& zHI-em98mb?vC=_>x;2$MNi%AQY#%m7PUUnapc$Coste6>W`5L}FU+{>Oq)~v-zGiz};EMM5?nQ5Ri-YpR3XB5>6&P`%^rl21%?JMZoEs@}IWs!PW zON7#|vIu3JRtV*VNew-wtcM z2F~%<+Q~_F(gGjRT9-SZN;P~m6X#7ln)E-fjV3cbQk{+%O)i#Y!;aFRvYO4pPRKH+ zps5oxd&`LY4=~eKXYzIi^R=|lL@={LXD%@ls53r4fO%9(m_;))MQ6;+l+u}cVPGzn zq^K~iX-Q$OvM`sWoXZkU- z;X7e=hM7h>Q@lI6#!D*F6J2IJ(=md+*Bw3MjhE;dlX@VG)4W9T$32j|jLy{U3Fg;g zLKDl(5S>Y5#!YA1_X4x8s4$CXri0Gp?k(q)->9kN(_8K=B@_|uwy`&^vYxc654_6K z2VP|nbWhOIR!@=7&&=SZ8?F64`+|9k7qGZ9jAdql&fH|Cs?JpD2j*5GVK$$caXRyc znIbyVv_F^=1%=rbW_sz2;{Y&DI@5!hZ3Sr60JL0a0byQvAlm0le$hVh1JOQh^9xPh zK`{S{!=2g32xeC3%q3<5b;c(g%%gn5ESi}qI)gVz(QS05-eAP#A~he17_DX+>vX17 zrgI6p;}9hHDX++CKQrxgCeKhXcn@9kWhgT%btaLSIyzG}0+l)7CMt6>0+ngxCejrD z5yiZu^252~FdZZ4drVgpwEr+C4PUSB`cuIy(X*bYoYM#%mdVZ}HwtLW)p#^KV+omHgmV1jwPlVJ8S(_UxXBEh8Ly~0TJwAd`d;#U^d z)tNF;U>-XP&9o@E*V$3HS7bcgd*vWBQR87YM`!LbDZ(Ot5|VY$ncS1XSY)9YJQ;(_4>G-; zjFsOfNeD+wfzN{^;j_zB_^je6P`*^cr=q9@_h{NwIZWziCyFvo!=0Y99R*C21Dr1y z^!4?hza5lveS6xV-5k%b>ah0qpoi1saZ-o7)NQ(4S6+{Cr@1d~bIwecpUF!ssWhmR zT$#$;k+aBc!9kZ_TX*N3f%}R#Y1CGdXa2U~-q8E+$N*y?NHe7$t{<@s&(byj51f4yl_ z!M->y@Xz%4TEwlJ^l&B?LD^EN&MYjf>)oW0vt&=H*iBkGOZJmq-k?jf0FcXwZDwT{`(e zOG^p!Wur9ZLxvJVG`2GDH@IqKHREU+Sg{vvacI@2Dif-6wCU7s>DCH*ZquQf|4NbzkYHH}qzyT$K_R$wqnj zH)R&tUocfAe7rk$xwZN~Co|(OO-iP-i&6c0$&_UYs*eF>DWZm*mn`RAb5pd!Z``5t zu<%|BUY}0uVjxHTz#eKs^SprF3YVuaGhSUe>LSoR^>xl38ka9 zJ-6G zUnY}uiD!^;u1plIcqi!#61AoW#pse*&H zBb=W;SsxI6#t#5inam+JPCr2xS78gsGKthx@@z?7NHMGBqJ{aDu>%eHV4RtiUOm=Y zqwW*5#@nrEjh83s(rP(x&nqYYT0b0|teOvIqG-7jiq)AYR>wdwEfd9=%}|7&q^4`+ zy!qQ?Vi36x2DMI7Bn&DR&%~e>hbdboiaQvU&F?619hz8@+@F?Vi1l@u{OX#Vhs`7OP{WorL~uiYDh zF7hkr1dS$_jVNn_khi=8`7A-Nn-BU&LGR$vs-vKbZUK3|Qd z*i9%auSPqJ<#<|-P{Jl$;C~$XYfo|DZg?RR#VGERyE9R=;VLf4L~);cYt#{{xf#8p zcP0jdx!X27LW5vXt#T#?$!I~$9baE!w5lNH4)v}!TE*VSXeF=1Xl0>eTM;i0*Gez)xgiP>*}vmP`~5GoYB8iQ@hN zC`M+Y2*nBS=CDK5c`E|mAQOYWJTCeiq8J!>xMgCHg{P`iTD2V!9fG4|@g)e2Hp~Ql zPS7rVS?$zlD!dKRS|sF$xTYo{Z@x|b9v?yAv<_vbK%RDhj%~v*{^-D8Lo|%9i}RT% zlK8^dMWH+7+=V&w#hKW&-U~(K0jjkfb?%jk!SrJ=XnKIcVc=IO6N3vp+!V+}u@E;T zX88cw?U8dCkAQwg<>L^TKRAk)G@8`y2*5reZ?*~Ym4e>P4{L>iKqK<+@CWsa9Ih1 zEtx2u@yIea6GbVWl}Bcx*vx}oSUh#!$^AJKgBCo>`NUHU3_RR2F?h?>#;x;iG+Pgz zJ{}4>hSyQ&1a0Ca%}$M`!n?Hotl8(-1-VJsWV-~qr=SZ@2Hix^3OAddpnLNoBEN3W zBM?q!N4cKk=Yf8@_phOx#nnsPORsjJdhwYUOy@~x#a{B&qU$How~?gT8^?j95XT4!|SNm6tx$jtjux0D(L(ZKpz&gfmdv61>K!z zqi8|9oCZBa(9O8_;TJ{ZL&NvT-uRx9mSI6qk9pEw-DM?v=|nd5_bK zZC73O`NF)FiDLI6D2`{MC_D~|O}l9DE<~9F9TX5&zINFqanI`;&EKxYFV%SR)svF;$+@Mrm#FG~JpWyGKb}g+qcQ%{^+X!B9~)uA z66yMW+(uVUEbQH>}=h=ly)cB~JLwb9T z{U}aRN996Ze_Y4ZzEHg8VRufO+P?ysjWMb4DTpWejr8+T?DRH2M`=e7z8HQ_4(aWFH8+OqI{!+11RQd#d_`7zJhM$m|OUey8cLEQsv^mKY5YJJ# zpOi)w&`I*xO0#{2)L<(OPJ#5wB(!Y@xCt|O*l@lU0lVpH+|0!h3S*EYX|U2OI&U{d)1}p1eroHADAUvtueFVSJ6pFYnM@Zc_(zE+=?<`+72urcUjqU97 zQq&}>`A{w-4L(4f9^x8qbAX0F#PGIxJ*|BxZq?V85#ZuBfdi6-IEP1b^@BWY* zON}Sc&_A#f90Gd-Op(_uau(UNGZ@Qo~k1iCf+65l+fY z?hUVJX0NsjU390|I7?ftbZZ%<{K-o~>l7j?#thbo`mzG)p#qO99`2UPbwy%f)aaK4uroPMa! zGS<3h&?bJ8PPSL@L^`rmCV|iX7jxgkQ^_> zAexrt?C(TPf+sJJ>INI3gZ)0R+9?UvufH_IJ^;)XS>>>quP4Erj?aM!{fL!zCc}QT z9cL1u8^p0e4q?!iGvEi3p>L(@_p$!j*IxWEzg@;L)2xJZHRFWU zPTgt|`*;CX``HM�dQyT^|dn$e@6EJJEX-RXM{~Eud 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 0 do flush(ir); + previous_active := active_shader; if texture_id >= 0 do active_shader = ^textured_shader; else do active_shader = ^simple_shader; + // Skip the GL calls if the texture didn't change. + if previous_active == active_shader do return; + gl.useProgram(active_shader.program); gl.uniform1i(active_shader.texture_uniform, math.max(texture_id, 0)); } use_ortho_projection :: (use ir: ^Immediate_Renderer, left: f32, right: f32, top: f32, bottom: f32) { projection_matrix := f32.[ - 2 / (right - left), 0, 0, -(right + left) / (right - left), - 0, 2 / (top - bottom), 0, -(top + bottom) / (top - bottom), - 0, 0, -2, -1, - 0, 0, 0, 1 + 2 / (right - left), 0, 0, 0, + 0, 2 / (top - bottom), 0, 0, + 0, 0, -2, 0, + -(right + left) / (right - left), -(top + bottom) / (top - bottom), -1, 1 ]; gl.useProgram(simple_shader.program); - gl.uniformMatrix4(simple_shader.view_uniform, true, projection_matrix); + gl.uniformMatrix4(simple_shader.view_uniform, false, projection_matrix); gl.useProgram(textured_shader.program); - gl.uniformMatrix4(textured_shader.view_uniform, true, projection_matrix); + gl.uniformMatrix4(textured_shader.view_uniform, false, projection_matrix); gl.useProgram(active_shader.program); } diff --git a/src/onyxchecker.c b/src/onyxchecker.c index 78efb99a..0a4a82fd 100644 --- a/src/onyxchecker.c +++ b/src/onyxchecker.c @@ -1659,8 +1659,12 @@ CheckStatus check_overloaded_function(AstOverloadedFunction* func) { return Check_Error; } - if (node->entity && node->entity->state <= Entity_State_Check_Types) { - done = 0; + if (node->kind == Ast_Kind_Function) { + AstFunction* func = (AstFunction *) node; + + if (func->entity_header && func->entity_header->state <= Entity_State_Check_Types) { + done = 0; + } } } diff --git a/src/onyxparser.c b/src/onyxparser.c index f7014998..7643dc9c 100644 --- a/src/onyxparser.c +++ b/src/onyxparser.c @@ -1417,6 +1417,14 @@ static void parse_polymorphic_variable(OnyxParser* parser, AstType*** next_inser } static AstType* parse_compound_type(OnyxParser* parser) { + // CLEANUP this is little weird having this here because it means that this parses: + // + // foo :: (x: (something_here: i32)) -> void --- + // + if (next_tokens_are(parser, 2, Token_Type_Symbol, ':')) { + consume_tokens(parser, 2); + } + AstType* first = parse_type(parser); if (parser->curr->type == ',') { @@ -1428,6 +1436,11 @@ static AstType* parse_compound_type(OnyxParser* parser) { while (consume_token_if_next(parser, ',')) { if (parser->hit_unexpected_token) return (AstType *) ctype; + + if (next_tokens_are(parser, 2, Token_Type_Symbol, ':')) { + consume_tokens(parser, 2); + } + bh_arr_push(ctype->types, parse_type(parser)); } -- 2.25.1