cwebber pushed a commit to branch compile-to-js-merge
in repository guile.
commit ee42731b574745ea6c21ae572b30a160a4a80407
Author: Ian Price <[email protected]>
AuthorDate: Tue Jun 16 23:17:09 2015 +0100
abort-to-prompt takes multiple arguments
---
module/language/js-il/runtime.js | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/module/language/js-il/runtime.js b/module/language/js-il/runtime.js
index 232e9fa..d5b7c9b 100644
--- a/module/language/js-il/runtime.js
+++ b/module/language/js-il/runtime.js
@@ -297,8 +297,9 @@ var values = function(self, k, arg) {
return k(arg);
};
-var abort_to_prompt = function(self, k, prompt, arg) {
+var abort_to_prompt = function(self, k, prompt) {
+ var args = Array.prototype.slice.call(arguments, 3);
var idx = find_prompt(prompt);
var spec = scheme.dynstack[idx];
@@ -315,8 +316,8 @@ var abort_to_prompt = function(self, k, prompt, arg) {
unwind(idx);
var handler = spec[2];
-
- return handler(kont, arg);
+ args.unshift(kont);
+ return handler.apply(handler, args);
};
var call_with_values = function (self, k, producer, consumer) {