genode/repos/libports/src/lib/qt5/patches/qt5_gcc5.patch
2017-05-31 13:15:51 +02:00

34 lines
1.5 KiB
Diff

From 650c6ee8e76bb574d3a1bea09e2494992d8f070e Mon Sep 17 00:00:00 2001
From: Allan Sandfeld Jensen <allan.jensen@theqtcompany.com>
Date: Fri, 6 Mar 2015 11:20:13 +0100
Subject: [PATCH] Fix g++ 5.0 build
A non-inline template needs to be explicitly instantiated if used
outside the object where it is declared.
Patch suggested by Khem Raj.
Task-number: QTBUG-44829
Change-Id: Ib0adbd9273bd1cef01e5863bc8aaa9c373022792
Reviewed-by: Andras Becsi <andras.becsi@theqtcompany.com>
---
Source/JavaScriptCore/runtime/JSObject.cpp | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/Source/JavaScriptCore/runtime/JSObject.cpp b/Source/JavaScriptCore/runtime/JSObject.cpp
index 5637e20..bd55919 100644
--- a/qtwebkit/Source/JavaScriptCore/runtime/JSObject.cpp
+++ b/qtwebkit/Source/JavaScriptCore/runtime/JSObject.cpp
@@ -1909,6 +1909,11 @@ void JSObject::putByIndexBeyondVectorLengthWithoutAttributes(ExecState* exec, un
}
}
+// Used in JSArray.cpp so we must instantiate explicit
+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<Int32Shape>(ExecState* exec, unsigned i, JSValue value);
+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<DoubleShape>(ExecState* exec, unsigned i, JSValue value);
+template void JSObject::putByIndexBeyondVectorLengthWithoutAttributes<ContiguousShape>(ExecState* exec, unsigned i, JSValue value);
+
void JSObject::putByIndexBeyondVectorLengthWithArrayStorage(ExecState* exec, unsigned i, JSValue value, bool shouldThrow, ArrayStorage* storage)
{
VM& vm = exec->vm();