summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAllan Sandfeld Jensen <allan.jensen@qt.io>2017-03-29 17:42:18 +0200
committerAllan Sandfeld Jensen <allan.jensen@qt.io>2017-04-05 10:37:13 +0000
commit64fdd317d4127142ad9e967197a2df6ac81ef55f (patch)
tree1b447922c7fa91c4cb45c7e803e3f819813de5f6
parentfa9fa06d05b0d0b5c2a0c217492b961d917e7475 (diff)
Fix build with GCC 7.0
Fixes some ambiguities and outright wrong code GCC 7 doesn't accept but earlier compilers did. Task-number:QTBUG-59776 Change-Id: I012f121842ac6cde49db0d571efc62aabe2115e3 Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
-rw-r--r--chromium/mojo/public/cpp/bindings/interface_ptr_info.h2
-rw-r--r--chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h2
-rw-r--r--chromium/v8/src/objects-body-descriptors.h2
-rw-r--r--chromium/v8/src/objects-inl.h19
-rw-r--r--chromium/v8/src/objects.h16
5 files changed, 25 insertions, 16 deletions
diff --git a/chromium/mojo/public/cpp/bindings/interface_ptr_info.h b/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
index 5bd29d542d5..c94a5acdcd4 100644
--- a/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
+++ b/chromium/mojo/public/cpp/bindings/interface_ptr_info.h
@@ -34,7 +34,7 @@ class InterfacePtrInfo {
InterfacePtrInfo& operator=(InterfacePtrInfo&& other) {
if (this != &other) {
- handle_ = other.handle_.Pass();
+ handle_ = std::move(other.handle_);
version_ = other.version_;
other.version_ = 0u;
}
diff --git a/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h b/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
index 58d97fbaac3..839c7df1144 100644
--- a/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
+++ b/chromium/third_party/WebKit/Source/wtf/LinkedHashSet.h
@@ -495,6 +495,8 @@ inline LinkedHashSet<T, U, V, W>& LinkedHashSet<T, U, V, W>::operator=(const Lin
return *this;
}
+inline void swapAnchor(LinkedHashSetNodeBase& a, LinkedHashSetNodeBase& b);
+
template<typename T, typename U, typename V, typename W>
inline void LinkedHashSet<T, U, V, W>::swap(LinkedHashSet& other)
{
diff --git a/chromium/v8/src/objects-body-descriptors.h b/chromium/v8/src/objects-body-descriptors.h
index 91cb8883be8..a1c3634bd76 100644
--- a/chromium/v8/src/objects-body-descriptors.h
+++ b/chromium/v8/src/objects-body-descriptors.h
@@ -99,7 +99,7 @@ class FixedBodyDescriptor final : public BodyDescriptorBase {
template <typename StaticVisitor>
static inline void IterateBody(HeapObject* obj, int object_size) {
- IterateBody(obj);
+ IterateBody<StaticVisitor>(obj);
}
};
diff --git a/chromium/v8/src/objects-inl.h b/chromium/v8/src/objects-inl.h
index 177c0294dcf..baca18d0ef1 100644
--- a/chromium/v8/src/objects-inl.h
+++ b/chromium/v8/src/objects-inl.h
@@ -3122,6 +3122,25 @@ void HashTableBase::SetNumberOfDeletedElements(int nod) {
template <typename Derived, typename Shape, typename Key>
+inline uint32_t HashTable<Derived, Shape, Key>::Hash(Key key) {
+ if (Shape::UsesSeed) {
+ return Shape::SeededHash(key, GetHeap()->HashSeed());
+ } else {
+ return Shape::Hash(key);
+ }
+}
+
+template <typename Derived, typename Shape, typename Key>
+inline uint32_t HashTable<Derived, Shape, Key>::HashForObject(Key key, Object* object) {
+ if (Shape::UsesSeed) {
+ return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
+ } else {
+ return Shape::HashForObject(key, object);
+ }
+}
+
+
+template <typename Derived, typename Shape, typename Key>
int HashTable<Derived, Shape, Key>::FindEntry(Key key) {
return FindEntry(GetIsolate(), key);
}
diff --git a/chromium/v8/src/objects.h b/chromium/v8/src/objects.h
index 0111c713117..d737a18fe9f 100644
--- a/chromium/v8/src/objects.h
+++ b/chromium/v8/src/objects.h
@@ -3157,21 +3157,9 @@ template <typename Derived, typename Shape, typename Key>
class HashTable : public HashTableBase {
public:
// Wrapper methods
- inline uint32_t Hash(Key key) {
- if (Shape::UsesSeed) {
- return Shape::SeededHash(key, GetHeap()->HashSeed());
- } else {
- return Shape::Hash(key);
- }
- }
+ inline uint32_t Hash(Key key);
- inline uint32_t HashForObject(Key key, Object* object) {
- if (Shape::UsesSeed) {
- return Shape::SeededHashForObject(key, GetHeap()->HashSeed(), object);
- } else {
- return Shape::HashForObject(key, object);
- }
- }
+ inline uint32_t HashForObject(Key key, Object* object);
// Returns a new HashTable object.
MUST_USE_RESULT static Handle<Derived> New(