From 32c7b8f23d604ec0630377c736b1502adaf67aba Mon Sep 17 00:00:00 2001 From: rocky Date: Sat, 29 Jun 2019 15:50:47 -0400 Subject: [PATCH] Add tests for x0ret's recent varrg fixes --- test/bytecode_3.3_run/04_def_annotate.pyc | Bin 13585 -> 14583 bytes test/bytecode_3.4_run/04_def_annotate.pyc | Bin 0 -> 9407 bytes test/bytecode_3.5_run/04_def_annotate.pyc | Bin 8712 -> 9407 bytes test/bytecode_3.7_run/04_def_annotate.pyc | Bin 8268 -> 8900 bytes test/simple_source/bug31/04_def_annotate.py | 20 +++++++++++++++++++- 5 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 test/bytecode_3.4_run/04_def_annotate.pyc diff --git a/test/bytecode_3.3_run/04_def_annotate.pyc b/test/bytecode_3.3_run/04_def_annotate.pyc index 62ab73c34a8685f7246b11dc4033ba6c4aa8dcb0..d3b566573691763ddd8344d69d9d3eb29327e1eb 100644 GIT binary patch delta 2075 zcmZux-A`Oq5TDt5A+YkXNcmj8c3J2`w@`M0+M+F`e78XBQl+cVF3bW;5xZT`M2Q=_ zZQ>*3ywn)Q#+N>GpG-`e7$1yL8vg(_ripJRy!oheX1`c)H|N~BzxmDl&dfRI?ymh4 z^L$lOYTtQYGylW^umneb#cU7qh{w%c&of-x{pDeTTtIGk1Q03*Y6bF$?Eq>6Y8Sf# z=roWQA^_9@)CqJ3c5Ljz(5vF|0i6Y6Zx>KEb01*@DBG3RN!Ip=-egb(zBXkMqGSDFGn6lg&7^5pdL;8j1 zBx}|(bQNe=pkaaP7#aZ@O$atBSUqE7K;r_93*=;I0%%g8Nr4&|x^@z}4m2gKDPc7- zYZ_=qpc#Rh7`g#;Q=ppyHA7;I-UJE?78I-ns8RPi;*wU(0^I_73w8=LC*;=c(_T}& zZv)K%-Im(9hpiB?>8)Z8*PSwWW1;}dCfu_@yusM?z(dT@5)=Y@2k2c$8ki0UK@>H@ zcz-%Bn29rh=7ARUb|;V6{JNadDHNS#hF<`5CnJDJcg6cO<1K^)g@G19uY$LWHJ2c1 zW_Uklc*Q`ZRdrGKB*n`ku872P$-JO-@uHb7(=AO{mWCLBkyiblM7H>ZbD!q9`CJU2 z?-gmlhJ=ska9Y(w-7CHTnwrnNFU0qsRH%a@@y(tdH(PO?3~(!lE@fm4c4+Sy50PS> zZ5vCeSW#W6R?s;`N zBSlh6>7;syB!5X^+ek@DQ%&`$qtcZpyez`mMA=67WS7v_&1p_7p--0ZK(=&ZW+)tw zsFx*s7*NU5AF$sVFFS*H!P+eU2=R)#+vZk(RXEj`ZRKj9;ximn%~cvXz{|=}?N+~) z+f}V++Ul;XM;sOU`l)>!VcH=MTaN0_5w8jSbIm?ZszmJ}PFVNrzD2wt@O9@t&ZvK# zhd6B=HhhP8OW+qx`#39FFPfa{d9#H<(fhl_Ztb<~A%@bl^XiHFW4xV5owEu&A;ddO z`3V=qHPwEA^E!id>2xE17$o`=@7K7bnmZ10(QbvJ_kqvx>p(F3=k-uwRv!gQUlOZQPby|-(v{xL*$lm{Pq?h1rQh12J^XvZBjqGF<%k7*3;#M-z_{qr@!XXRZ3ZH(=V$PW%t>!l0`F delta 1279 zcmZXS-EYfb6vw}(t%Z46S@))+bTc*6y>wfP*=)nSt(cclV-}|}mNc1JBwRFECviiz zJQoszi5quhziT1lis+?CT!}vbSFVWjoVGU6=J))b-{*Xu=bY!|=lJZE+D9u^7FQ4a z8v42lxQIo+Wzyd*&%|f5Yw=2#)U))xCWfCpIi&x1g^u33)2$v zf>(k!gG1mg;CkhR#A+nhfVU#)0XKlRAp_SxB>W#~w1k_G=4NmUW<0inL@D|>0&dlE zTD2UXpf+&3qIN}Pf}-Gs9 zn=WX}z=JlcUDH{e;qju-X*o0*EK8P(hBW-L5SIOt-8hqvQZit_GX#>$c|3IP=>yNw za?0Os`?gPyz1==D-c(w_B$i9QCyS&xaHMBsA{h_4O>HnOwb?5rvuCEBjx zRHfg%4wslw-))MC7Bs2KEJdyA3|Czz>QpW3U(j}`mi1?;L$z1c_lSB`iwAPr)AhHh zN40n$OWmqsPgvHD{3 zaPv1B5bqrw)7hVg{3cvB?}{GP6l3-4hz50@RD-SL7M;qisUb@zRTbY12m73SF$RFubD>DE9 diff --git a/test/bytecode_3.4_run/04_def_annotate.pyc b/test/bytecode_3.4_run/04_def_annotate.pyc new file mode 100644 index 0000000000000000000000000000000000000000..8fd46ab480d6f66a892c96da6faefbaa297a05d7 GIT binary patch literal 9407 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 q{2uXywyWh;tH#0lC z|0hFFMx!CGw|MPIX!9hYbZOVFRQrJ}R=Iyz>(}m^8qG4c9DKu6AV_;ja4MEQ^-_F9S})s!OeJC?IK7 z*mkb4%>_6EILoKK>X_4VAy4BGn!5#iH{ja^|4QMUXzv%a9yvz!dI z_f^S%NwyF1c1*J&mx|h0OgCBH6w4*Cd}rN~8h$c%>yc%bxwDF{7!QlaAYZp)5*dKo zR4I$hR3fHw_MBc^=HI2c8!7D}i@e}Fn)75*%bC{J2HwnGKkqEG&aKDOrjhq^Ir1lC@o`lz7eX7zx1%V;V(At`fAh(arMyGToET5%>n63 zwzhOT{g|IigC5;MvteSWGY@^?V1hhxnED8dqb!6pz>yBokc>-}K4xZ1Cd?0ImsQj> z`O|7lxDEz5?7*w|P6^+^K%IYEuH(cr>fkyqT)zeuiL0kPY3XY7I9RPFgz{;5bA@Ck zIc}TYxX?W4}x7P&wpO{p9Nd}8|B?n*(srZ z7JLbH7tu~SsJn=|)6!jL*B3)+RaZjVYOubu4$}zp*gv?bU$CgKp#!7 zZ|t>npE*8X)B@HrPc1)L!}51Lkhs7ydy)P2Z=n zdBd=|6Pe29tgGo2-&}KKKYvh~Bm6$ClsFdj9T;O*CrKn|ahezW{OU3i4=l}(pJ=H& z>Uqw+{=k)=JC)I%Cm%`f$BcCo!*{Rfk53zq-@ delta 2135 zcmah~%TJ?K6hF7$*AC85`he0xUpzW!dA})8p2Glj2Iv4YXsKz4w@gr(m|IMYE{Jv# zSTKy;cqz2##RQ#U9`819~$vBF2i2ViG0#&M@DNolkWP>{D7-Ju%;Yl2 z6_9Bt8sfy>LUx3;tHwClWq`Z`auv{L@oc_N>+Ld)gJ~wM4R(-g7J(3QowZp@>i~Hd znzjR#m%kf;r9zI#mWq1sdB*j?~KRRw2I}H}nJ7b^WQQE*L_~ z790f|ifW-~T@orTlwIep4C>=+ZO%4J4?@LsclA5Ycm>j?zpDP(*?EeXDy}`DwEo@s zjTqET{-{p7f;ty;=|5{yVnFw~COj&P<|;xWN}^lO#Qa{>j&lmeI!rq|a=JH-l33Hb z?rky34tG85u+C5&w41n907cxUx^$l>VDH970-2(E*AsPLPS%4qBRDLw9wzg7vyNVJ zW$L4PpMKrzPZUk)fIN9s^MRI5tPCFVSh@*L;w|K)Tm;=Fan zslRhA>317bqF4XWm=mj<$Hze`6%W_v#TvQ8ERTbi*N9Hn+MVe$0yTsg{8enQ*Vk4}q#mjh3HY0_Qm#<=0?S39Xy{c9ic%A2i4PW2nSt z0);9RAR72nWBSMDFWlpZaB@|WW*z#2me_|OGw>R&&f8BQ@|V!xx2z}PhMFU5DpBl6 z>Lx9ygDDq^coRD;+4tUh^NqZ^O87Mr9s0A@{taqVDn^2uQ^}M&ukI=8O58&fy={JO y{0O*E)DU5G4~o*KDByDEpvV**OeHZFZ4HY!Z8joCGk!56X!vkMaMbF9*ucLhNQGel diff --git a/test/bytecode_3.7_run/04_def_annotate.pyc b/test/bytecode_3.7_run/04_def_annotate.pyc index 48fd26bc51f9d9735eaffbbff1ade2d62bc10010..754ab6a5b690621bd2b657f3c947fa6b56f49d31 100644 GIT binary patch delta 2656 zcmah~S#MKE6uxuswQ&~5&O+>L&dOqv6p|3ukUeC9ERaCK6jGC8gCP(YCqS!Iks7~M zsDybzRVvZcz-{mLXwIct4a?3F2PQ-{9BqD;$b(<`*6ONEccT-VvtXt%y9f(;Z z*UmRr#3Ockflc}A4k{uKk~?T|?TgydC8YAnziv_mRU%wK_tswQUZDnROcV3a$&V!_q!#PB=rw)ItWe0^vQ{pD;rubf4O&9r+GA2*gr)K%I05{$V-- zzbvvdV$)GN_R!R$qO~DPoJws=a zJPWUu0;p9Tv`?ezGjt9D>**uJY{bq(_4{-I`)i1psFHhCTQXus)V^sxGUI{8#!p2m zM;9qXmmbAAMVILc8LR1@44MUyQv*fy6bF5%K}-tk=(3JF=_<_u z(jcP9Lq|IIMCV)-r7MtiP0#;29lMUXZt%o(^amZSpMkO)92Q2Tf%dKn^d7`m)J+OP z`MjR~_hKX6S{2wApN!4yZDg%@39<{ECGWHm{P>&S&DZvdzK{WO-dX2qoESqU; zz<3QKXh}DcvW88y5_aiW3bcI}uStW}VmybI70dBWP>~g^wFS)_xY-n3M-VGAaCI2J zVvRweXKHAMWWC%pG{5c3CKQXPrK^zwxAc;vxGH=wyF59#K=SOYV-G ze6#w_^}u~7C(^1;ha-W< zu3e&2^;P>FZCKi){_)JHSmA&}Ho;ZT3Z*!y7jL+EadAmI!jhFpKMbmIP_4NAj!rm3 z8gs*4>t$W?Fq%ez!GD4NvMq9t)k^E~tXFV7fwy5G%l4EUot z9LF@rq<0(~UwWe^3jRl)PkB8KF{SCA7gwn}rT!AVBfYn`wl%4@^}KkSZ5;>QL=NR~ zO*vOGUd9zff%qIsJ|RH|=zlGn5t|~;X%R0=SwxLHTiY#VozeU+OSj?g0`fFkrmS7y z?=WSTnkze3@s8Ubh zG4rPNy!-rI(F7a5Z8mxW0GH7+8$FRaKmHX#n(DQ`Lu?+#ISqEBVjHk-0A0-i>(*fT zl?f38*x4MQ>l!FfwGB`YK(6Hg^{9JQ_plrn-{WeRxUKT48+X3(KJXEfef-iD_hLAo zU2e)=b))(>XX*i{ftp~TAIZBsfp2m{l<2?YC~n$H^_5+&p4Qy=4IrT3NIA$OK1s;$ zch|&1rKOHd!!#Dy;Rl?nV}$ zDCt3;>6-Mel8(itJM$6ASGX)-)2`0cw%_EBljM(ytYgD>wB)N(HnVAkN!k>fTa*Xb z=NnG)H6;0-ko@LKKDLsNmgFNL`Ekl#Hu@QGoh6q_4&rh7yh&Hrtp!?|k96}39iLI6 W&X?!1T(-+9v%IRJuETcO0r4-uRw>*7 delta 2013 zcmaJ>$xoX{6#wS)X9qz(+n*O~2%jjJ7~d-TA^)6OF57?265z#Bd-%t zJ9HrGK;%Ny2?<1r?JYIsM%V@22)of(j_3;XAnHNnLDYK&^}$uNT}7K0ZT&ESXaJE9 z(I5;V8bVZo=o$_)vs9gMK1g~JF>w9B;n?+Mt-=z1<5rgz0_>E^fJM1m;`0}_!ktILLLk9sM&<{ zFvGOuP+?|$i_}S}w!kdRA*BL$;GJDF8p(D~+Dae=lbF`L)O~iWTR>kO11(DJp40|0 zv3E(!luQW5w;5BwKBYw04mF&wPmT1(#%3;^TiaNTtbd&5kMEfN(wb=W=)-XJH6ayk2*rR~WAm zk4rz%qeYrJktq9BZ#>m#JStkPqhjIWPb@CJ353NH-7hw5cCnz3vY4<3NfR=75RdQ> zi7<&K@xt&L^|)=rb&^Ltay>K^*p&Fi%2}7>duk&-!_h#;C@}Y;h^qXu$lJVTYC%GV zd1?#W&yCWIE}gheqBP5l@7u4j7V)F~L)Itbj2Mk?iqR`$j2M1bGOC?hjfhw^)+1`I z(<1GdK<@7yDYGT1XG7UlFhWIeL7SBe^x0iQWvQxvsrps1)e zSyaw7;c7uGwuk;&PNNew^O#_UQ~d23z<WGa0-2IyP zab&)Z>!hi1j2}~ZT;$4Ue6OTn;ciOjm{V$e{#C<>@`^X=QVh4~Q=#9jssc9PzRt@q6Twn5s0yVrAGJLDyuI zaU1@g{6s{)(!(0Wx0P*k^i1&@67)zFG+4WvzumA fsr;iygzDs!CGWw;c*J6r4X?%hDi5=Y-KyAsFt@e_ diff --git a/test/simple_source/bug31/04_def_annotate.py b/test/simple_source/bug31/04_def_annotate.py index 9ae36156..4281a809 100644 --- a/test/simple_source/bug31/04_def_annotate.py +++ b/test/simple_source/bug31/04_def_annotate.py @@ -31,9 +31,22 @@ def test9(arg_1=55, *varargs: int, y=5, **kwargs): def test10(args_1, b: 'annotating b', c: int) -> float: return 5.4 -class IOBase: +def test11(*, name): + return args, name + +def test12(a, *args, name): + return a, args pass +def test13(*args, name): + return args, name + +def test14(*args, name: int=1, qname): + return args, name, qname + +def test15(*args, name='S', fname, qname=4): + return args, name, fname, qname + # Python 3.1 _pyio.py uses the -> "IOBase" annotation def o(f, mode = "r", buffering = None) -> "IOBase": return (f, mode, buffering) @@ -121,3 +134,8 @@ assert test6(2.3, 4, 5) == (2.3, 4, 5) ann1(1, 'test', 5) ann2(1) + +### FIXME: fill in... + +assert test12(1, 2, 3, name='hi') == (1, (2, 3)), "a, *args, name" +assert test13(1, 2, 3, name='hi') == ((1, 2, 3), 'hi'), "*args, name"