summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Loehning <robert.loehning@qt.io>2017-01-19 13:07:26 +0100
committerRobert Loehning <robert.loehning@qt.io>2017-01-19 12:21:43 +0000
commiteeb0b8fd21dba8421bd50b475a6442c27b63a1a6 (patch)
tree5e98b54f7dbb41bab5161978540948b62c95f5fd
parent5dc8e9a743481b6e7bddacc4d5597760bfc0d045 (diff)
downloadqt-creator-eeb0b8fd21dba8421bd50b475a6442c27b63a1a6.tar.gz
Revert "Revert "Utils: Remove old compiler support code""
Thomas provided a smaller fix. This reverts commit 78fb7f44bf393d8b9e3e22fcccc4ae7951d4bb6e. Change-Id: I1edff6477526fe4ce29df38852f47fe49117561e Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
-rw-r--r--src/libs/utils/smallstring.h16
-rw-r--r--src/libs/utils/smallstringiterator.h7
-rw-r--r--src/libs/utils/smallstringlayout.h21
-rw-r--r--src/libs/utils/smallstringliteral.h13
-rw-r--r--src/libs/utils/smallstringvector.h7
-rw-r--r--src/libs/utils/smallstringview.h13
-rw-r--r--tests/unit/unittest/smallstring-benchmark.cpp4
-rw-r--r--tests/unit/unittest/smallstring-test.cpp4
8 files changed, 1 insertions, 84 deletions
diff --git a/src/libs/utils/smallstring.h b/src/libs/utils/smallstring.h
index 905520055f..e172cbaae6 100644
--- a/src/libs/utils/smallstring.h
+++ b/src/libs/utils/smallstring.h
@@ -45,19 +45,6 @@
#include <utility>
#include <vector>
-#pragma push_macro("constexpr")
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
-#pragma push_macro("noexcept")
-#ifdef __clang__
-#define __cpp_noexcept 201003
-#endif
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
#ifdef UNIT_TESTS
#define unitttest_public public
#else
@@ -864,6 +851,3 @@ using SmallString = BasicSmallString<31>;
using PathString = BasicSmallString<191>;
} // namespace Utils
-
-#pragma pop_macro("noexcept")
-#pragma pop_macro("constexpr")
diff --git a/src/libs/utils/smallstringiterator.h b/src/libs/utils/smallstringiterator.h
index 5f4bd69402..026a8b78b5 100644
--- a/src/libs/utils/smallstringiterator.h
+++ b/src/libs/utils/smallstringiterator.h
@@ -28,11 +28,6 @@
#include <cstddef>
#include <iterator>
-#pragma push_macro("noexcept")
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
namespace Utils {
namespace Internal {
@@ -151,5 +146,3 @@ private:
} // namespace Internal
} // namespace Utils
-
-#pragma pop_macro("noexcept")
diff --git a/src/libs/utils/smallstringlayout.h b/src/libs/utils/smallstringlayout.h
index c03bdc4ad8..7fcaefd007 100644
--- a/src/libs/utils/smallstringlayout.h
+++ b/src/libs/utils/smallstringlayout.h
@@ -29,22 +29,6 @@
#include <cstdint>
-#pragma push_macro("constexpr")
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
-#pragma push_macro("noexcept")
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
-#ifdef __cpp_alignas
-#define ALIGNAS_16 alignas(16)
-#else
-#define ALIGNAS_16
-#endif
-
namespace Utils {
namespace Internal {
@@ -86,7 +70,7 @@ struct ShortStringLayout {
};
template <uint MaximumShortStringDataAreaSize>
-struct ALIGNAS_16 StringDataLayout {
+struct alignas(16) StringDataLayout {
static_assert( MaximumShortStringDataAreaSize >= 15, "Size must be greater equal than 15 bytes!");
static_assert(((MaximumShortStringDataAreaSize + 1) % 16) == 0, "Size + 1 must be dividable by 16!");
StringDataLayout() noexcept = default;
@@ -136,6 +120,3 @@ struct ALIGNAS_16 StringDataLayout {
} // namespace Internal
} // namespace Utils
-
-#pragma pop_macro("noexcept")
-#pragma pop_macro("constexpr")
diff --git a/src/libs/utils/smallstringliteral.h b/src/libs/utils/smallstringliteral.h
index dacba59d60..4b7a6ba633 100644
--- a/src/libs/utils/smallstringliteral.h
+++ b/src/libs/utils/smallstringliteral.h
@@ -29,16 +29,6 @@
#include "smallstringlayout.h"
#include "smallstringview.h"
-#pragma push_macro("constexpr")
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
-#pragma push_macro("noexcept")
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
namespace Utils {
template <int Size>
@@ -129,6 +119,3 @@ private:
using SmallStringLiteral = BasicSmallStringLiteral<31>;
} // namespace Utils
-
-#pragma pop_macro("noexcept")
-#pragma pop_macro("constexpr")
diff --git a/src/libs/utils/smallstringvector.h b/src/libs/utils/smallstringvector.h
index 1a8406210c..3e98b36f9f 100644
--- a/src/libs/utils/smallstringvector.h
+++ b/src/libs/utils/smallstringvector.h
@@ -33,11 +33,6 @@
#include <QStringList>
-#pragma push_macro("noexcept")
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
namespace Utils {
template<uint SmallStringSize>
@@ -160,5 +155,3 @@ private:
using SmallStringVector = BasicSmallStringVector<31>;
using PathStringVector = BasicSmallStringVector<191>;
} // namespace Utils;
-
-#pragma pop_macro("noexcept")
diff --git a/src/libs/utils/smallstringview.h b/src/libs/utils/smallstringview.h
index c0cb4aedbb..71d04fe20d 100644
--- a/src/libs/utils/smallstringview.h
+++ b/src/libs/utils/smallstringview.h
@@ -31,16 +31,6 @@
#include <cstring>
-#pragma push_macro("constexpr")
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
-#pragma push_macro("noexcept")
-#ifndef __cpp_noexcept
-#define noexcept
-#endif
-
namespace Utils {
class SmallStringView
@@ -135,6 +125,3 @@ bool operator!=(const SmallStringView& first, const SmallStringView& second) noe
}
} // namespace Utils
-
-#pragma pop_macro("noexcept")
-#pragma pop_macro("constexpr")
diff --git a/tests/unit/unittest/smallstring-benchmark.cpp b/tests/unit/unittest/smallstring-benchmark.cpp
index 46b32cde0e..99bc27dded 100644
--- a/tests/unit/unittest/smallstring-benchmark.cpp
+++ b/tests/unit/unittest/smallstring-benchmark.cpp
@@ -29,10 +29,6 @@
#include <utils/smallstringvector.h>
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
namespace {
Utils::SmallStringView createText(int size)
diff --git a/tests/unit/unittest/smallstring-test.cpp b/tests/unit/unittest/smallstring-test.cpp
index 3bbb10c653..863d2ec66e 100644
--- a/tests/unit/unittest/smallstring-test.cpp
+++ b/tests/unit/unittest/smallstring-test.cpp
@@ -31,10 +31,6 @@
#include <utils/smallstringio.h>
#include <utils/smallstringvector.h>
-#ifndef __cpp_constexpr
-#define constexpr
-#endif
-
using namespace ::testing;
using Utils::SmallString;