X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=lib%2Fas3%2Fok%2Fassignments.as;h=d0687f13c2bdd9002ecef35d2edbdb8399bad375;hb=0d97c44e7f70eef1b199373ef7b586749eb409c8;hp=fa02305e9358048b281e7227776b4719753b6b41;hpb=01236b5f4d388dbb0b95171613cdfd8eaabbccca;p=swftools.git diff --git a/lib/as3/ok/assignments.as b/lib/as3/ok/assignments.as index fa02305..d0687f1 100644 --- a/lib/as3/ok/assignments.as +++ b/lib/as3/ok/assignments.as @@ -5,7 +5,7 @@ package { public class Main extends flash.display.MovieClip { var count:int = 1; - var num:int = 15; + var num:int = 18; function assert(b:Boolean) { if(b) { @@ -22,14 +22,14 @@ package { /* test that assignment expressions do indeed return the right value */ - x = (y=1); assert(x==1 && y==1); - x = (y++); assert(x==1 && y==2); - x = (y--); assert(x==2 && y==1); - x = (++y); assert(x==2 && y==2); - x = (--y); assert(x==1 && y==1); - x = (y += 1);assert(x==2 && y==2); - x = (y -= 1);assert(x==1 && y==1); - x = y = 5; assert(x==5 && y==5); + x = (y=1); assert(x==1 && y==1); //x=1;y=1; + x = (y++); assert(x==1 && y==2); //x=1;y=2; + x = (y--); assert(x==2 && y==1); //x=2;y=1; + x = (++y); assert(x==2 && y==2); //x=2;y=2; + x = (--y); assert(x==1 && y==1); //x=1;y=1; + x = (y += 1);assert(x==2 && y==2); //x=2;y=2; + x = (y -= 1);assert(x==1 && y==1); //x=1;y=1; + x = y = 5; assert(x==5 && y==5); //x=5;y=5; y = 5; x = (y*=5); assert(x==25 && y==25); @@ -39,6 +39,18 @@ package { x = (y>>>=1); assert(x==2 && y==2); y = 2; x = (y/=2); assert(x==1 && y==1); + x = 0x55; + x |= 0x0f; assert(x==0x5f); + + x=3;y=3; + x ^= 7; + y = y^7; + assert(x==y); + + x = 0x55; + y = 0x0f; + x &= y; + assert(x==0x05); /* nested assignment expressions need different temporary registers- make sure they don't collide */ @@ -46,8 +58,10 @@ package { var b:int = 2; var c:int = 3; var d:int = 4; - a += (b += (c += (d += 1))) + a += b += c += d += 1 assert(a==11 && b==10 && c==8 && d==5); + + trace("[exit]"); } } }