From 8780764b274217b256aadd00114a76bdffbdb1ef Mon Sep 17 00:00:00 2001 From: Lars Knoll Date: Tue, 10 Apr 2018 11:07:24 +0200 Subject: Warn about non spec compliant extension being used eval("function(){}") would return a function object in our engine. This is not compliant with the ES spec, so warn about it, as it'll start throwing a syntax error in 5.12. Also fix the two places where we were using that syntax in our auto tests. Change-Id: I573c2ad0ec4955570b857c69edef2f75998d55a9 Reviewed-by: Simon Hausmann --- tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'tests/auto/qml/qqmllanguage') diff --git a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp index 18b1718ddf..8913528d79 100644 --- a/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp +++ b/tests/auto/qml/qqmllanguage/tst_qqmllanguage.cpp @@ -2131,7 +2131,7 @@ void tst_qqmllanguage::scriptStringJs() QVERIFY(!object->scriptProperty().booleanLiteral(&ok) && !ok); QJSValue inst = engine.newQObject(object.data()); - QJSValue func = engine.evaluate("function(value) { this.scriptProperty = value }"); + QJSValue func = engine.evaluate("(function(value) { this.scriptProperty = value })"); func.callWithInstance(inst, QJSValueList() << "test a \"string "); QCOMPARE(QQmlScriptStringPrivate::get(object->scriptProperty())->script, QString("\"test a \\\"string \"")); @@ -2263,7 +2263,7 @@ void tst_qqmllanguage::scriptStringComparison() //QJSValue inst1 = engine.newQObject(object1); QJSValue inst2 = engine.newQObject(object2.data()); QJSValue inst3 = engine.newQObject(object3.data()); - QJSValue func = engine.evaluate("function(value) { this.scriptProperty = value }"); + QJSValue func = engine.evaluate("(function(value) { this.scriptProperty = value })"); const QString s = "hello\\n\\\"world\\\""; const qreal n = 12.345; -- cgit v1.2.3