var global_defs = this.options["global_defs"];
if (typeof global_defs == "object") for (var key in global_defs) {
if (/^@/.test(key) && HOP(global_defs, key)) {
- var ast = parse(global_defs[key]);
- if (ast.body.length == 1 && ast.body[0] instanceof AST_SimpleStatement) {
- global_defs[key.slice(1)] = ast.body[0].body;
- } else throw new Error(string_template("Can't handle expression: {value}", {
- value: global_defs[key]
- }));
+ global_defs[key.slice(1)] = parse(global_defs[key], {
+ expression: true
+ });
}
}
var pure_funcs = this.options["pure_funcs"];
});
var err = result.error;
assert.ok(err instanceof Error);
- assert.strictEqual(err.stack.split(/\n/)[0], "Error: Can't handle expression: debugger");
+ assert.strictEqual(err.stack.split(/\n/)[0], "SyntaxError: Unexpected token: keyword (debugger)");
});
it("should skip inherited properties", function() {
var foo = Object.create({ skip: this });