5 unshift @INC, '../lib';
19 @args = split(/:/,$_,99);
21 $try = "\$x = new Math::BigInt \"$args[0]\";";
24 } elsif ($f eq "bneg") {
26 } elsif ($f eq "babs") {
29 $try .= "\$y = new Math::BigInt \"$args[1]\";";
31 $try .= "\$x <=> \$y;";
32 }elsif ($f eq "badd"){
34 }elsif ($f eq "bsub"){
36 }elsif ($f eq "bmul"){
38 }elsif ($f eq "bdiv"){
40 }elsif ($f eq "bmod"){
42 }elsif ($f eq "bgcd"){
43 $try .= "Math::BigInt::bgcd(\$x, \$y);";
44 }elsif ($f eq "blsft"){
45 $try .= "\$x << \$y;";
46 }elsif ($f eq "brsft"){
47 $try .= "\$x >> \$y;";
48 }elsif ($f eq "band"){
50 }elsif ($f eq "bior"){
52 }elsif ($f eq "bxor"){
54 }elsif ($f eq "bnot"){
56 } else { warn "Unknown op"; }
58 #print ">>>",$try,"<<<\n";
60 if ("$ans1" eq $ans) { #bug!
63 print "not ok $test\n";
64 print "# '$try' expected: '$ans' got: '$ans1'\n";
80 000000 0000000 00000:+0
105 +123456789:+123456789
106 -123456789:+123456789
150 +9999999:+1:+10000000
151 +99999999:+1:+100000000
152 +999999999:+1:+1000000000
153 +9999999999:+1:+10000000000
154 +99999999999:+1:+100000000000
161 +10000000:-1:+9999999
162 +100000000:-1:+99999999
163 +1000000000:-1:+999999999
164 +10000000000:-1:+9999999999
165 +123456789:+987654321:+1111111110
166 -123456789:+987654321:+864197532
167 -123456789:-987654321:-1111111110
168 +123456789:-987654321:-864197532
189 +99999999:+1:+99999998
190 +999999999:+1:+999999998
191 +9999999999:+1:+9999999998
192 +99999999999:+1:+99999999998
199 +10000000:-1:+10000001
200 +100000000:-1:+100000001
201 +1000000000:-1:+1000000001
202 +10000000000:-1:+10000000001
203 +123456789:+987654321:-864197532
204 -123456789:+987654321:-1111111110
205 -123456789:-987654321:+864197532
206 +123456789:-987654321:+1111111110
216 +123456789123456789:+0:+0
217 +0:+123456789123456789:+0
227 +10101:+10101:+102030201
228 +1001001:+1001001:+1002003002001
229 +100010001:+100010001:+10002000300020001
230 +10000100001:+10000100001:+100002000030000200001
231 +11111111111:+9:+99999999999
232 +22222222222:+9:+199999999998
233 +33333333333:+9:+299999999997
234 +44444444444:+9:+399999999996
235 +55555555555:+9:+499999999995
236 +66666666666:+9:+599999999994
237 +77777777777:+9:+699999999993
238 +88888888888:+9:+799999999992
239 +99999999999:+9:+899999999991
255 +1000000000:+9:+111111111
256 +2000000000:+9:+222222222
257 +3000000000:+9:+333333333
258 +4000000000:+9:+444444444
259 +5000000000:+9:+555555555
260 +6000000000:+9:+666666666
261 +7000000000:+9:+777777777
262 +8000000000:+9:+888888888
263 +9000000000:+9:+1000000000
264 +35500000:+113:+314159
265 +71000000:+226:+314159
266 +106500000:+339:+314159
267 +1000000000:+3:+333333333
272 +999999999999:+9:+111111111111
273 +999999999999:+99:+10101010101
274 +999999999999:+999:+1001001001
275 +999999999999:+9999:+100010001
276 +999999999999999:+99999:+10000100001
311 +999999999999:+999:+0
312 +999999999999:+9999:+0
313 +999999999999999:+99999:+0
330 +1:+48:+281474976710656
336 +281474976710656:+48:+1
341 +281474976710656:+0:+0
342 +281474976710656:+1:+0
343 +281474976710656:+281474976710656:+281474976710656
347 +281474976710656:+0:+281474976710656
348 +281474976710656:+1:+281474976710657
349 +281474976710656:+281474976710656:+281474976710656
353 +281474976710656:+0:+281474976710656
354 +281474976710656:+1:+281474976710657
355 +281474976710656:+281474976710656:+0
360 +281474976710656:-281474976710657