rework when/default implementation so that the call to succeed() happends outside of the block
rework when/default implementation so that the call to succeed() happends outside of the block

A block can be left by an exception handler or a call to leave(), but we still need
to call succeed() in those cases. We now also check the return value of the block.

labster/rakudo,teodozjan/rakudo,lucasbuchala/rakudo,niner/rakudo,teodozjan/rakudo,labster/rakudo,tony-o/deb-rakudodaily,jonathanstowe/rakudo,MasterDuke17/rakudo,sergot/rakudo,rakudo/rakudo,tbrowder/rakudo,nbrown/rakudo,zostay/rakudo,ab5tract/rakudo,MasterDuke17/rakudo,ugexe/rakudo,tbrowder/rakudo,jonathanstowe/rakudo,lucasbuchala/rakudo,ab5tract/rakudo,zhuomingliang/rakudo,raydiak/rakudo,samcv/rakudo,cognominal/rakudo,softmoth/rakudo,paultcochrane/rakudo,awwaiid/rakudo,samcv/rakudo,b2gills/rakudo,zhuomingliang/rakudo,teodozjan/rakudo,dankogai/rakudo,ugexe/rakudo,ungrim97/rakudo,zhuomingliang/rakudo,rakudo/rakudo,Gnouc/rakudo,tony-o/rakudo,nunorc/rakudo,labster/rakudo,Leont/rakudo,jonathanstowe/rakudo,nunorc/rakudo,skids/rakudo,cognominal/rakudo,pmurias/rakudo,pmurias/rakudo,zostay/rakudo,softmoth/rakudo,dwarring/rakudo,usev6/rakudo,MasterDuke17/rakudo,samcv/rakudo,softmoth/rakudo,zostay/rakudo,LLFourn/rakudo,tony-o/rakudo,dwarring/rakudo,sergot/rakudo,niner/rakudo,skids/rakudo,usev6/rakudo,salortiz/rakudo,usev6/rakudo,dankogai/rakudo,samcv/rakudo,jonathanstowe/rakudo,Leont/rakudo,rjbs/rakudo,tbrowder/rakudo,cygx/rakudo,tony-o/deb-rakudodaily,rakudo/rakudo,salortiz/rakudo,usev6/rakudo,tony-o/rakudo,salortiz/rakudo,samcv/rakudo,sjn/rakudo,skids/rakudo,azawawi/rakudo,b2gills/rakudo,raydiak/rakudo,ab5tract/rakudo,pmurias/rakudo,rjbs/rakudo,tony-o/rakudo,rakudo/rakudo,cygx/rakudo,raydiak/rakudo,ungrim97/rakudo,Gnouc/rakudo,ungrim97/rakudo,ungrim97/rakudo,ugexe/rakudo,nunorc/rakudo,zhuomingliang/rakudo,usev6/rakudo,niner/rakudo,cygx/rakudo,azawawi/rakudo,laben/rakudo,awwaiid/rakudo,raydiak/rakudo,labster/rakudo,retupmoca/rakudo,ugexe/rakudo,teodozjan/rakudo,salortiz/rakudo,dankogai/rakudo,labster/rakudo,sjn/rakudo,ab5tract/rakudo,LLFourn/rakudo,b2gills/rakudo,LLFourn/rakudo,retupmoca/rakudo,awwaiid/rakudo,nbrown/rakudo,retupmoca/rakudo,dankogai/rakudo,skids/rakudo,skids/rakudo,nbrown/rakudo,Leont/rakudo,laben/rakudo,paultcochrane/rakudo,tbrowder/rakudo,tony-o/rakudo,softmoth/rakudo,paultcochrane/rakudo,sjn/rakudo,tony-o/rakudo,ungrim97/rakudo,dwarring/rakudo,laben/rakudo,laben/rakudo,pmurias/rakudo,MasterDuke17/rakudo,cygx/rakudo,paultcochrane/rakudo,lucasbuchala/rakudo,paultcochrane/rakudo,nbrown/rakudo,azawawi/rakudo,ab5tract/rakudo,tony-o/deb-rakudodaily,Leont/rakudo,Gnouc/rakudo,dwarring/rakudo,lucasbuchala/rakudo,b2gills/rakudo,rakudo/rakudo,salortiz/rakudo,cognominal/rakudo,LLFourn/rakudo,jonathanstowe/rakudo,Gnouc/rakudo,MasterDuke17/rakudo,cognominal/rakudo,sergot/rakudo,azawawi/rakudo,awwaiid/rakudo,LLFourn/rakudo,cygx/rakudo,Gnouc/rakudo,tbrowder/rakudo,rakudo/rakudo,azawawi/rakudo,dankogai/rakudo,tony-o/deb-rakudodaily,tbrowder/rakudo,b2gills/rakudo,ugexe/rakudo,rjbs/rakudo,tony-o/deb-rakudodaily,niner/rakudo,softmoth/rakudo,lucasbuchala/rakudo,zostay/rakudo,sjn/rakudo,awwaiid/rakudo,sergot/rakudo,Gnouc/rakudo,salortiz/rakudo,labster/rakudo,retupmoca/rakudo,tony-o/deb-rakudodaily,MasterDuke17/rakudo,nunorc/rakudo,tony-o/deb-rakudodaily,nbrown/rakudo,sjn/rakudo,nbrown/rakudo,cognominal/rakudo