and display an error if a reporter or a “called” ring is missing a
“report” statement
pull/3/merge
jmoenig 2014-11-24 12:59:02 +01:00
rodzic 2cee474cb6
commit 68c4d2d291
2 zmienionych plików z 3 dodań i 1 usunięć

Wyświetl plik

@ -2349,3 +2349,4 @@ ______
* Objects: Fixed #372 * Objects: Fixed #372
* Threads: Fixed #644 * Threads: Fixed #644
* Store: Fixed #34 * Store: Fixed #34
* Threads: Fixed #131

Wyświetl plik

@ -698,7 +698,7 @@ Process.prototype.doYield = function () {
Process.prototype.exitReporter = function () { Process.prototype.exitReporter = function () {
// catch-tag for REPORT and STOP BLOCK primitives // catch-tag for REPORT and STOP BLOCK primitives
this.popContext(); this.handleError(new Error("missing 'report' statement in reporter"));
}; };
// Process Exception Handling // Process Exception Handling
@ -1098,6 +1098,7 @@ Process.prototype.evaluateCustomBlock = function () {
outer.receiver outer.receiver
); );
runnable.parentContext = exit; runnable.parentContext = exit;
this.popContext(); // don't yield when done
} else { } else {
// tag all "stop this block" blocks with the current // tag all "stop this block" blocks with the current
// procedureCount as exitTag, and mark all "report" blocks // procedureCount as exitTag, and mark all "report" blocks