The following code triggers an "internal error" (seems to be from language.yacc:699).
function frame0(function x) { return lambda() { if (string bad=x() //Missing close parenthesis { } }; }
$ pike frame0.pike frame0.pike:6:Internal compiler error (push_compiler_frame0). frame0.pike:8:Missing ')'. frame0.pike:10:Missing ';'. frame0.pike:10:Unexpected end of file. frame0.pike:10:Missing '}'. frame0.pike:10:Opening '{' was here. frame0.pike:10:Unexpected end of file. Pike: Failed to compile script.
The code *is* in error (there should be another close parenthesis on line 5), but the actual error is masked. Is this worth looking into?
ChrisA