Index: src/builtins/control.pir
===================================================================
--- src/builtins/control.pir	(revision 29090)
+++ src/builtins/control.pir	(working copy)
@@ -26,7 +26,13 @@
 .include 'except_types.pasm'
 
 .sub 'return'
-    .param pmc value
+    .param pmc value     :optional
+    .param int has_value :opt_flag
+
+    if has_value goto have_value
+    get_global $P1, "Failure"                                  
+    value = $P1."new"()                                         
+  have_value:
     $P0 = new 'Exception'
     $P0['_type'] = .CONTROL_RETURN
     setattribute $P0, 'payload', value

