diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-06-26 14:18:16 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-07-03 08:08:39 +0000 |
commit | 65e799a9dec58b4bde3a085149f8cbcf0f5f3fba (patch) | |
tree | 4a9473532f420d8f20fc34af60bf1f132d459b82 /src/qml/jsruntime/qv4stringobject.cpp | |
parent | 61440411a979c7c317bafccfbf5201d969819a06 (diff) |
Implement support for new.target
Support the new.target meta property in the codegen, and
add support for passing the newtarget into the constructor
vtable methods and the execution context.
Change-Id: I62ea58e5e92d894035a76e35776203e9837c383b
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4stringobject.cpp')
-rw-r--r-- | src/qml/jsruntime/qv4stringobject.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/qml/jsruntime/qv4stringobject.cpp b/src/qml/jsruntime/qv4stringobject.cpp index 7750bf4aea..f2d0d52013 100644 --- a/src/qml/jsruntime/qv4stringobject.cpp +++ b/src/qml/jsruntime/qv4stringobject.cpp @@ -164,7 +164,7 @@ void Heap::StringCtor::init(QV4::ExecutionContext *scope) Heap::FunctionObject::init(scope, QStringLiteral("String")); } -ReturnedValue StringCtor::virtualCallAsConstructor(const FunctionObject *f, const Value *argv, int argc) +ReturnedValue StringCtor::virtualCallAsConstructor(const FunctionObject *f, const Value *argv, int argc, const Value *) { ExecutionEngine *v4 = static_cast<const Object *>(f)->engine(); Scope scope(v4); @@ -514,7 +514,7 @@ ReturnedValue StringPrototype::method_match(const FunctionObject *b, const Value Scoped<RegExpObject> that(scope, argc ? argv[0] : Primitive::undefinedValue()); if (!that) { // convert args[0] to a regexp - that = RegExpCtor::virtualCallAsConstructor(b, argv, argc); + that = RegExpCtor::virtualCallAsConstructor(b, argv, argc, b); if (v4->hasException) return Encode::undefined(); } |