From f2e44812a739b9f481213c67e7683b99676f2593 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Thu, 15 Jun 2017 11:38:35 +0200 Subject: Prospective build fix for Integrity OS If ExecutionEngine is forward declared and the compiler tries to instantiate the Value/Array/etc. templates early on, it may not be able to map ExecutionEngine to EngineBase. That is what the error message suggests. Since we don't need ExecutionEngine let's try EngineBase. Change-Id: Idd18dd431705cce8df79180e7ac08574bbe1170c Reviewed-by: Simon Hausmann --- src/qml/memory/qv4writebarrier_p.h | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/qml/memory') diff --git a/src/qml/memory/qv4writebarrier_p.h b/src/qml/memory/qv4writebarrier_p.h index 3182fd2aa9..86fd28000d 100644 --- a/src/qml/memory/qv4writebarrier_p.h +++ b/src/qml/memory/qv4writebarrier_p.h @@ -123,7 +123,7 @@ struct Pointer { return base; } - void set(ExecutionEngine *e, T newVal) { + void set(EngineBase *e, T newVal) { WriteBarrier::write(e, base(), reinterpret_cast(&ptr), reinterpret_cast(newVal)); } @@ -146,10 +146,10 @@ struct HeapValue : Value { return base; } - void set(ExecutionEngine *e, const Value &newVal) { + void set(EngineBase *e, const Value &newVal) { WriteBarrier::write(e, base(), this, newVal); } - void set(ExecutionEngine *e, Heap::Base *b) { + void set(EngineBase *e, Heap::Base *b) { WriteBarrier::write(e, base(), this, b); } }; @@ -166,10 +166,10 @@ struct ValueArray { return base; } - void set(ExecutionEngine *e, uint index, Value v) { + void set(EngineBase *e, uint index, Value v) { WriteBarrier::write(e, base(), values + index, v); } - void set(ExecutionEngine *e, uint index, Heap::Base *b) { + void set(EngineBase *e, uint index, Heap::Base *b) { WriteBarrier::write(e, base(), values + index, b); } inline const Value &operator[] (uint index) const { @@ -180,13 +180,13 @@ struct ValueArray { return values; } - void insertData(ExecutionEngine *e, uint index, Value v) { + void insertData(EngineBase *e, uint index, Value v) { for (uint i = size - 1; i > index; --i) { values[i] = values[i - 1]; } set(e, index, v); } - void removeData(ExecutionEngine *e, uint index, int n = 1) { + void removeData(EngineBase *e, uint index, int n = 1) { Q_UNUSED(e); for (uint i = index; i < size - n; ++i) { values[i] = values[i + n]; -- cgit v1.2.3