From afbf1f74af678af0eda76035133406aa8883408a Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Tue, 11 Nov 2014 15:08:30 +0100 Subject: Ported ExecutionEngine::newString and newIdentifier to Heap::String Avoid the use of Returned for newString and changed the identifier table to use Heap::String. This required moving some code back into Heap::String, but that's code that doesn't call back into the GC, so allocations and therefore future object moves aren't possible. Change-Id: I1dca3e9c12a9c56f09419af8cc8cba39fe04f720 Reviewed-by: Lars Knoll --- src/qml/jsruntime/qv4identifier_p.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'src/qml/jsruntime/qv4identifier_p.h') diff --git a/src/qml/jsruntime/qv4identifier_p.h b/src/qml/jsruntime/qv4identifier_p.h index afed5c646f..a89ac29d2f 100644 --- a/src/qml/jsruntime/qv4identifier_p.h +++ b/src/qml/jsruntime/qv4identifier_p.h @@ -39,6 +39,10 @@ QT_BEGIN_NAMESPACE namespace QV4 { +namespace Heap { + struct String; +} + struct String; struct IdentifierTable; struct ExecutionEngine; @@ -102,7 +106,7 @@ protected: const IdentifierHashEntry *lookup(const QString &str) const; const IdentifierHashEntry *lookup(String *str) const; const Identifier *toIdentifier(const QString &str) const; - const Identifier *toIdentifier(String *str) const; + const Identifier *toIdentifier(Heap::String *str) const; }; -- cgit v1.2.3