# HG changeset patch # User karpij1 # Date 1240931019 0 # Node ID 4daeb5471d43db62215360c618e34374f8e2e8d2 # Parent 9369d251b3ede9f50f3b57a3f08b39660dc735df added test for exception handling (only returnTop) diff -r 9369d251b3ed -r 4daeb5471d43 IRBuilderTest.st --- a/IRBuilderTest.st Tue Apr 28 11:23:26 2009 +0000 +++ b/IRBuilderTest.st Tue Apr 28 15:03:39 2009 +0000 @@ -834,6 +834,42 @@ "Created: / 28-04-2009 / 13:10:13 / karpij1 " ! +testBlock_exteptionHandler_noRemoteReturn + |aCompiledMethod irBuilder| + + irBuilder := (IRBuilder new) + numRargs:1; + addTemps:#( #self); + pushBlockUsingBuilder:[:builder | + builder + numRargs:0; + pushLiteral: 1; + pushLiteral: 0; + send: #/; + pushLiteral: false; + returnTop + ]; + pushLiteralVariable: #Error; + pushBlockUsingBuilder:[:builder| + builder + numRargs:0; + pushLiteral: true; + returnTop]; + send: #on:do:; + returnTop; + ir. + " + irBuilder ir + " + + aCompiledMethod := irBuilder compiledCode. + self assert:(aCompiledMethod isKindOf:CompiledMethod). + self assert:((aCompiledMethod valueWithReceiver:1 arguments:#()) = true). + + "Modified: / 01-04-2009 / 19:43:52 / Jan Vrany " + "Created: / 28-04-2009 / 13:39:01 / karpij1 " +! + testBlock_methodTempVar |aCompiledMethod irBuilder|