aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-12-14 08:54:22 +0100
committerLiang Qi <liang.qi@qt.io>2016-12-14 08:54:57 +0100
commit172260ebef6b830768468317deee5e05743f92f3 (patch)
treef5bf99ecfecddcf0d07c5017b27d3e8f14d41176 /tools
parent9fbc5aa8866bbc19cc0db9f5f247276f36f3e283 (diff)
parent8bf579d8d4feb13ca8651e98dd762b28483abe9e (diff)
Merge remote-tracking branch 'origin/5.8' into dev
Diffstat (limited to 'tools')
-rw-r--r--tools/qmlimportscanner/main.cpp6
-rw-r--r--tools/qmljs/qmljs.cpp57
2 files changed, 6 insertions, 57 deletions
diff --git a/tools/qmlimportscanner/main.cpp b/tools/qmlimportscanner/main.cpp
index b65783f1aa..84f0d6deb1 100644
--- a/tools/qmlimportscanner/main.cpp
+++ b/tools/qmlimportscanner/main.cpp
@@ -521,7 +521,8 @@ int main(int argc, char *argv[])
std::cerr << "-importPath requires an argument\n";
argReceiver = &qmlImportPaths;
} else {
- std::cerr << "Invalid argument: \"" << qPrintable(arg) << "\"\n";
+ std::cerr << qPrintable(appName) << ": Invalid argument: \""
+ << qPrintable(arg) << "\"\n";
return 1;
}
@@ -531,7 +532,8 @@ int main(int argc, char *argv[])
break;
++i;
if (!QFile::exists(arg)) {
- std::cerr << "No such file or directory: \"" << qPrintable(arg) << "\"\n";
+ std::cerr << qPrintable(appName) << ": No such file or directory: \""
+ << qPrintable(arg) << "\"\n";
return 1;
} else {
*argReceiver += arg;
diff --git a/tools/qmljs/qmljs.cpp b/tools/qmljs/qmljs.cpp
index 850b9a9a0a..54e1b6cea8 100644
--- a/tools/qmljs/qmljs.cpp
+++ b/tools/qmljs/qmljs.cpp
@@ -42,6 +42,7 @@
#include "private/qv4context_p.h"
#include "private/qv4script_p.h"
#include "private/qv4string_p.h"
+#include "private/qqmlbuiltinfunctions_p.h"
#ifdef V4_ENABLE_JIT
# include "private/qv4isel_masm_p.h"
@@ -60,57 +61,6 @@ QT_REQUIRE_CONFIG(qml_interpreter);
#include <iostream>
-namespace builtins {
-
-using namespace QV4;
-
-struct Print: FunctionObject
-{
- struct Data : Heap::FunctionObject {
- void init(ExecutionContext *scope)
- {
- Heap::FunctionObject::init(scope, QStringLiteral("print"));
- }
- };
- V4_OBJECT(FunctionObject)
-
- static void call(const Managed *, Scope &scope, CallData *callData)
- {
- for (int i = 0; i < callData->argc; ++i) {
- QString s = callData->args[i].toQStringNoThrow();
- if (i)
- std::cout << ' ';
- std::cout << qPrintable(s);
- }
- std::cout << std::endl;
- scope.result = Encode::undefined();
- }
-};
-
-DEFINE_OBJECT_VTABLE(Print);
-
-struct GC: public FunctionObject
-{
- struct Data : Heap::FunctionObject {
- void init(ExecutionContext *scope)
- {
- Heap::FunctionObject::init(scope, QStringLiteral("gc"));
- }
-
- };
- V4_OBJECT(FunctionObject)
-
- static void call(const Managed *m, Scope &scope, CallData *)
- {
- static_cast<const GC *>(m)->engine()->memoryManager->runGC();
- scope.result = Encode::undefined();
- }
-};
-
-DEFINE_OBJECT_VTABLE(GC);
-
-} // builtins
-
static void showException(QV4::ExecutionContext *ctx, const QV4::Value &exception, const QV4::StackTrace &trace)
{
QV4::Scope scope(ctx);
@@ -200,10 +150,7 @@ int main(int argc, char *argv[])
QV4::Scope scope(&vm);
QV4::ScopedContext ctx(scope, vm.rootContext());
- QV4::ScopedObject print(scope, vm.memoryManager->allocObject<builtins::Print>(vm.rootContext()));
- vm.globalObject->put(QV4::ScopedString(scope, vm.newIdentifier(QStringLiteral("print"))).getPointer(), print);
- QV4::ScopedObject gc(scope, vm.memoryManager->allocObject<builtins::GC>(ctx));
- vm.globalObject->put(QV4::ScopedString(scope, vm.newIdentifier(QStringLiteral("gc"))).getPointer(), gc);
+ QV4::GlobalExtensions::init(vm.globalObject, QJSEngine::ConsoleExtension | QJSEngine::GarbageCollectionExtension);
for (const QString &fn : qAsConst(args)) {
QFile file(fn);