diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2016-12-01 15:40:16 +0100 |
---|---|---|
committer | Jani Heikkinen <jani.heikkinen@qt.io> | 2016-12-02 07:28:27 +0000 |
commit | a63e6ea1ccae744ed40d00aac97c4ce46e7ac6d4 (patch) | |
tree | 412fa5ee8a9f885432e4eb65e718476c91eb8ef1 | |
parent | 6ed23b91b949b7edaf96cdb0f2bba7b21a02de89 (diff) |
Fix build of QtQuick compiler generated code with popScope()
After commit 5e6bf607ee1e466eebabb7b8114c9f5e8fc40a9e we would not have
an exception check template matching anymore that sets NeedsCheck to
false, and consequently generated code that would try to call popScope()
with an ExecutionEngine instead of a NoThrowEngine.
Task-number: QTRD-2219
Change-Id: Iddf8218d1efb9af77c9a5f7ef84b9998fb167ef5
Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
-rw-r--r-- | src/qml/jsruntime/qv4runtimeapi_p.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4runtimeapi_p.h b/src/qml/jsruntime/qv4runtimeapi_p.h index e06a3f5ec2..355b7890b6 100644 --- a/src/qml/jsruntime/qv4runtimeapi_p.h +++ b/src/qml/jsruntime/qv4runtimeapi_p.h @@ -63,6 +63,11 @@ template <typename T> struct ExceptionCheck { enum { NeedsCheck = 1 }; }; +// push_catch and pop context methods shouldn't check for exceptions +template <> +struct ExceptionCheck<void (*)(QV4::NoThrowEngine *)> { + enum { NeedsCheck = 0 }; +}; template <typename A> struct ExceptionCheck<void (*)(A, QV4::NoThrowEngine)> { enum { NeedsCheck = 0 }; |