Author: pmichaud
Date: Tue Dec 30 18:00:39 2008
New Revision: 34682
Modified:
trunk/languages/perl6/src/builtins/control.pir
Log:
[rakudo]: eval() returns Nil for void expressions (RT #61868, lathos++)
Modified: trunk/languages/perl6/src/builtins/control.pir
==============================================================================
--- trunk/languages/perl6/src/builtins/control.pir (original)
+++ trunk/languages/perl6/src/builtins/control.pir Tue Dec 30 18:00:39 2008
@@ -312,19 +312,21 @@
invokable = compiler.'compile'(code)
res = invokable()
- pop_eh
exception = new 'Failure'
goto done
catch:
.get_results (exception)
- goto done
done:
+ pop_eh
# Propagate exception to caller
$P0 = getinterp
$P0 = $P0['lexpad';1]
$P0['$!'] = exception
+ unless null res goto with_res
+ res = new ['Nil']
+ with_res:
.return (res)
.end