diff options
author | Ivan Komissarov <abbapoh@gmail.com> | 2020-07-28 18:30:03 +0200 |
---|---|---|
committer | Ivan Komissarov <abbapoh@gmail.com> | 2020-12-18 17:00:26 +0100 |
commit | 8d92009942ba69b816f2e5125ca0c0d1b38f97b0 (patch) | |
tree | 283a2c2c0252f097e617dd3e7777136d5f3d0086 | |
parent | 2b20531fe05b096104e23216c0556acb1080927f (diff) |
Fix build in C++17 mode
Replaces auto-ptrs with unique_ptrs and fixes the ceil() macro which
confilcts with some other code in Qt6 headers.
Change-Id: I59e45fae84878d1fa0cf59383f0eb7763f1ecc68
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
8 files changed, 13 insertions, 17 deletions
diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/parser/Nodes.h b/src/3rdparty/javascriptcore/JavaScriptCore/parser/Nodes.h index c216ea8..ea93b50 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/parser/Nodes.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/parser/Nodes.h @@ -1385,11 +1385,11 @@ namespace JSC { using ParserArenaRefCounted::operator new; - void adoptData(std::auto_ptr<ScopeNodeData> data) + void adoptData(std::unique_ptr<ScopeNodeData> data) { ASSERT(!data->m_arena.contains(this)); ASSERT(!m_data); - m_data.adopt(data); + m_data.adopt(std::move(data)); } ScopeNodeData* data() const { return m_data.get(); } void destroyData() { m_data.clear(); } diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/parser/Parser.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/parser/Parser.cpp index 4c046d0..5a68703 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/parser/Parser.cpp +++ b/src/3rdparty/javascriptcore/JavaScriptCore/parser/Parser.cpp @@ -29,8 +29,6 @@ #include <wtf/Vector.h> #include <memory> -using std::auto_ptr; - #ifndef yyparse extern int jscyyparse(void*); #endif diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/MathExtras.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/MathExtras.h index bea5896..0336376 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/MathExtras.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/MathExtras.h @@ -71,9 +71,7 @@ const float piOverFourFloat = static_cast<float>(M_PI_4); #if OS(DARWIN) // Work around a bug in the Mac OS X libc where ceil(-0.1) return +0. -inline double wtf_ceil(double x) { return copysign(ceil(x), x); } - -#define ceil(x) wtf_ceil(x) +inline double ceil(double x) { return copysign(ceil(x), x); } #endif diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/OwnPtr.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/OwnPtr.h index b7e62b1..9507ab4 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/OwnPtr.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/OwnPtr.h @@ -40,7 +40,7 @@ namespace WTF { typedef ValueType* PtrType; explicit OwnPtr(PtrType ptr = 0) : m_ptr(ptr) { } - OwnPtr(std::auto_ptr<ValueType> autoPtr) : m_ptr(autoPtr.release()) { } + OwnPtr(std::unique_ptr<ValueType> autoPtr) : m_ptr(autoPtr.release()) { } // See comment in PassOwnPtr.h for why this takes a const reference. template <typename U> OwnPtr(const PassOwnPtr<U>& o); @@ -58,7 +58,7 @@ namespace WTF { // FIXME: This should be renamed to adopt. void set(PtrType ptr) { ASSERT(!ptr || m_ptr != ptr); deleteOwnedPtr(m_ptr); m_ptr = ptr; } - void adopt(std::auto_ptr<ValueType> autoPtr) { ASSERT(!autoPtr.get() || m_ptr != autoPtr.get()); deleteOwnedPtr(m_ptr); m_ptr = autoPtr.release(); } + void adopt(std::unique_ptr<ValueType> autoPtr) { ASSERT(!autoPtr.get() || m_ptr != autoPtr.get()); deleteOwnedPtr(m_ptr); m_ptr = autoPtr.release(); } void clear() { deleteOwnedPtr(m_ptr); m_ptr = 0; } diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/VectorTraits.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/VectorTraits.h index bf77878..36ab76b 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/VectorTraits.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/VectorTraits.h @@ -81,7 +81,7 @@ namespace WTF { struct VectorTraits<OwnPtr<P> > : SimpleClassVectorTraits { }; template<typename P> - struct VectorTraits<std::auto_ptr<P> > : SimpleClassVectorTraits { }; + struct VectorTraits<std::unique_ptr<P> > : SimpleClassVectorTraits { }; template<typename First, typename Second> struct VectorTraits<pair<First, Second> > diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/Collator.h b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/Collator.h index 51e8a06..ed38598 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/Collator.h +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/Collator.h @@ -47,7 +47,7 @@ namespace WTF { ~Collator(); void setOrderLowerFirst(bool); - static std::auto_ptr<Collator> userDefault(); + static std::unique_ptr<Collator> userDefault(); Result collate(const ::UChar*, size_t, const ::UChar*, size_t) const; diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/CollatorDefault.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/CollatorDefault.cpp index eddbe53..1362e74 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/CollatorDefault.cpp +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/CollatorDefault.cpp @@ -45,9 +45,9 @@ void Collator::setOrderLowerFirst(bool) { } -std::auto_ptr<Collator> Collator::userDefault() +std::unique_ptr<Collator> Collator::userDefault() { - return std::auto_ptr<Collator>(new Collator(0)); + return std::unique_ptr<Collator>(new Collator(nullptr)); } // A default implementation for platforms that lack Unicode-aware collation. diff --git a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp index a1753a4..1042843 100644 --- a/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp +++ b/src/3rdparty/javascriptcore/JavaScriptCore/wtf/unicode/icu/CollatorICU.cpp @@ -57,7 +57,7 @@ Collator::Collator(const char* locale) { } -std::auto_ptr<Collator> Collator::userDefault() +std::unique_ptr<Collator> Collator::userDefault() { #if OS(DARWIN) && PLATFORM(CF) // Mac OS X doesn't set UNIX locale to match user-selected one, so ICU default doesn't work. @@ -71,11 +71,11 @@ std::auto_ptr<Collator> Collator::userDefault() char buf[256]; if (collationOrder) { CFStringGetCString(collationOrder, buf, sizeof(buf), kCFStringEncodingASCII); - return std::auto_ptr<Collator>(new Collator(buf)); + return std::unique_ptr<Collator>(new Collator(buf)); } else - return std::auto_ptr<Collator>(new Collator("")); + return std::unique_ptr<Collator>(new Collator("")); #else - return std::auto_ptr<Collator>(new Collator(0)); + return std::unique_ptr<Collator>(new Collator(nullptr)) #endif } |