Remove code for compilers that did not support NSDMI for aggregates
authordbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Apr 2018 21:10:56 +0000 (21:10 +0000)
committerdbates@webkit.org <dbates@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 20 Apr 2018 21:10:56 +0000 (21:10 +0000)
https://bugs.webkit.org/show_bug.cgi?id=184599

Reviewed by Per Arne Vollan.

Remove workaround for earlier Visual Studio versions that did not support non-static data
member initializers (NSDMI) for aggregates. We have since updated all the build.webkit.org
and EWS bots to a newer version that supports this feature.

Source/bmalloc:

* bmalloc/BPlatform.h:
* bmalloc/List.h:
(bmalloc::ListNode::ListNode): Deleted.
(bmalloc::List::iterator::iterator): Deleted.

Source/JavaScriptCore:

* domjit/DOMJITEffect.h:
(JSC::DOMJIT::Effect::Effect): Deleted.
* runtime/HasOwnPropertyCache.h:
(JSC::HasOwnPropertyCache::Entry::Entry): Deleted.
* wasm/WasmFormat.h:
(JSC::Wasm::WasmToWasmImportableFunction::WasmToWasmImportableFunction): Deleted.

Source/WebCore:

* Modules/cache/CacheQueryOptions.h:
(WebCore::CacheQueryOptions::CacheQueryOptions): Deleted.
* dom/Node.h:
(WebCore::Node::InsertionType::InsertionType): Deleted.
(WebCore::Node::RemovalType::RemovalType): Deleted.
* html/canvas/CanvasStyle.h:
(WebCore::CanvasStyle::CMYKAColor::CMYKAColor): Deleted.
* page/EventHandler.h:
(WebCore::EventHandler::DragTargetResponse::DragTargetResponse): Deleted.
* page/animation/CSSAnimationController.h:
(WebCore::AnimationUpdate::AnimationUpdate): Deleted.
* platform/graphics/FontSelectionAlgorithm.h:
(WebCore::FontSelectionRequest::tied const):
(WebCore::FontSelectionRequest::FontSelectionRequest): Deleted.
(WebCore::FontSelectionCapabilities::FontSelectionCapabilities): Deleted.
* platform/mediastream/IceCandidate.h:
(WebCore::IceCandidate::IceCandidate): Deleted.
* platform/text/StringWithDirection.h:
(WebCore::StringWithDirection::StringWithDirection): Deleted.
* rendering/MarkedText.h:
(WebCore::MarkedText::MarkedText): Deleted.
* style/StyleUpdate.h:
(WebCore::Style::ElementUpdate::ElementUpdate): Deleted.
(WebCore::Style::ElementUpdates::ElementUpdates): Deleted.
(WebCore::Style::TextUpdate::TextUpdate): Deleted.

Source/WTF:

* wtf/Compiler.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@230856 268f45cc-cd09-0410-ab3c-d52691b4dbfc

20 files changed:
Source/JavaScriptCore/ChangeLog
Source/JavaScriptCore/domjit/DOMJITEffect.h
Source/JavaScriptCore/runtime/HasOwnPropertyCache.h
Source/JavaScriptCore/wasm/WasmFormat.h
Source/WTF/ChangeLog
Source/WTF/wtf/Compiler.h
Source/WebCore/ChangeLog
Source/WebCore/Modules/cache/CacheQueryOptions.h
Source/WebCore/dom/Node.h
Source/WebCore/html/canvas/CanvasStyle.h
Source/WebCore/page/EventHandler.h
Source/WebCore/page/animation/CSSAnimationController.h
Source/WebCore/platform/graphics/FontSelectionAlgorithm.h
Source/WebCore/platform/mediastream/IceCandidate.h
Source/WebCore/platform/text/StringWithDirection.h
Source/WebCore/rendering/MarkedText.h
Source/WebCore/style/StyleUpdate.h
Source/bmalloc/ChangeLog
Source/bmalloc/bmalloc/BPlatform.h
Source/bmalloc/bmalloc/List.h

index e80da7d..48abcb9 100644 (file)
@@ -1,3 +1,21 @@
+2018-04-20  Daniel Bates  <dabates@apple.com>
+
+        Remove code for compilers that did not support NSDMI for aggregates
+        https://bugs.webkit.org/show_bug.cgi?id=184599
+
+        Reviewed by Per Arne Vollan.
+
+        Remove workaround for earlier Visual Studio versions that did not support non-static data
+        member initializers (NSDMI) for aggregates. We have since updated all the build.webkit.org
+        and EWS bots to a newer version that supports this feature.
+
+        * domjit/DOMJITEffect.h:
+        (JSC::DOMJIT::Effect::Effect): Deleted.
+        * runtime/HasOwnPropertyCache.h:
+        (JSC::HasOwnPropertyCache::Entry::Entry): Deleted.
+        * wasm/WasmFormat.h:
+        (JSC::Wasm::WasmToWasmImportableFunction::WasmToWasmImportableFunction): Deleted.
+
 2018-04-20  Mark Lam  <mark.lam@apple.com>
 
         Build fix for internal builds after r230826.
index 2ac764f..3a0e1e4 100644 (file)
 namespace JSC { namespace DOMJIT {
 
 struct Effect {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    constexpr Effect() = default;
-    constexpr Effect(HeapRange reads, HeapRange writes)
-        : reads { reads }
-        , writes { writes }
-    {
-    }
-    constexpr Effect(HeapRange reads, HeapRange writes, HeapRange def)
-        : reads { reads }
-        , writes { writes }
-        , def { def }
-    {
-    }
-#endif
 
     constexpr static Effect forWrite(HeapRange writeRange)
     {
index 7627516..adadc89 100644 (file)
@@ -42,18 +42,6 @@ public:
         static ptrdiff_t offsetOfImpl() { return OBJECT_OFFSETOF(Entry, impl); }
         static ptrdiff_t offsetOfResult() { return OBJECT_OFFSETOF(Entry, result); }
 
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        Entry() = default;
-        Entry(RefPtr<UniquedStringImpl>&& impl, StructureID structureID, bool result)
-            : impl { WTFMove(impl) }
-            , structureID { structureID }
-            , result { result }
-        {
-        }
-
-        Entry& operator=(Entry&& other) = default;
-#endif
-
         RefPtr<UniquedStringImpl> impl;
         StructureID structureID { 0 };
         bool result { false };
index d727c59..2784e90 100644 (file)
@@ -275,15 +275,6 @@ struct InternalFunction {
 // meant as fast lookup tables for these opcodes and do not own code.
 struct WasmToWasmImportableFunction {
     using LoadLocation = MacroAssemblerCodePtr<WasmEntryPtrTag>*;
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    WasmToWasmImportableFunction() = default;
-    WasmToWasmImportableFunction(SignatureIndex signatureIndex, LoadLocation entrypointLoadLocation)
-        : signatureIndex { signatureIndex }
-        , entrypointLoadLocation { entrypointLoadLocation }
-    {
-    }
-#endif
-
     static ptrdiff_t offsetOfEntrypointLoadLocation() { return OBJECT_OFFSETOF(WasmToWasmImportableFunction, entrypointLoadLocation); }
 
     // FIXME: Pack signature index and code pointer into one 64-bit value. See <https://bugs.webkit.org/show_bug.cgi?id=165511>.
index 78ea783..c156ea6 100644 (file)
@@ -1,3 +1,16 @@
+2018-04-20  Daniel Bates  <dabates@apple.com>
+
+        Remove code for compilers that did not support NSDMI for aggregates
+        https://bugs.webkit.org/show_bug.cgi?id=184599
+
+        Reviewed by Per Arne Vollan.
+
+        Remove workaround for earlier Visual Studio versions that did not support non-static data
+        member initializers (NSDMI) for aggregates. We have since updated all the build.webkit.org
+        and EWS bots to a newer version that supports this feature.
+
+        * wtf/Compiler.h:
+
 2018-04-19  David Kilzer  <ddkilzer@apple.com>
 
         Enable Objective-C weak references
index 31a4f3c..c26479c 100644 (file)
 #define WTF_COMPILER_SUPPORTS_EABI 1
 #endif
 
-/* Non-static data member initializer (NSDMI) for aggregates */
-
-#if defined(__cpp_aggregate_nsdmi) && __cpp_aggregate_nsdmi >= 201304
-#define WTF_COMPILER_SUPPORTS_NSDMI_FOR_AGGREGATES 1
-#endif
+/* ASAN_ENABLED and SUPPRESS_ASAN */
 
 #define ASAN_ENABLED COMPILER_HAS_CLANG_FEATURE(address_sanitizer)
 
index e5f04ac..fbca760 100644 (file)
@@ -1,3 +1,40 @@
+2018-04-20  Daniel Bates  <dabates@apple.com>
+
+        Remove code for compilers that did not support NSDMI for aggregates
+        https://bugs.webkit.org/show_bug.cgi?id=184599
+
+        Reviewed by Per Arne Vollan.
+
+        Remove workaround for earlier Visual Studio versions that did not support non-static data
+        member initializers (NSDMI) for aggregates. We have since updated all the build.webkit.org
+        and EWS bots to a newer version that supports this feature.
+
+        * Modules/cache/CacheQueryOptions.h:
+        (WebCore::CacheQueryOptions::CacheQueryOptions): Deleted.
+        * dom/Node.h:
+        (WebCore::Node::InsertionType::InsertionType): Deleted.
+        (WebCore::Node::RemovalType::RemovalType): Deleted.
+        * html/canvas/CanvasStyle.h:
+        (WebCore::CanvasStyle::CMYKAColor::CMYKAColor): Deleted.
+        * page/EventHandler.h:
+        (WebCore::EventHandler::DragTargetResponse::DragTargetResponse): Deleted.
+        * page/animation/CSSAnimationController.h:
+        (WebCore::AnimationUpdate::AnimationUpdate): Deleted.
+        * platform/graphics/FontSelectionAlgorithm.h:
+        (WebCore::FontSelectionRequest::tied const):
+        (WebCore::FontSelectionRequest::FontSelectionRequest): Deleted.
+        (WebCore::FontSelectionCapabilities::FontSelectionCapabilities): Deleted.
+        * platform/mediastream/IceCandidate.h:
+        (WebCore::IceCandidate::IceCandidate): Deleted.
+        * platform/text/StringWithDirection.h:
+        (WebCore::StringWithDirection::StringWithDirection): Deleted.
+        * rendering/MarkedText.h:
+        (WebCore::MarkedText::MarkedText): Deleted.
+        * style/StyleUpdate.h:
+        (WebCore::Style::ElementUpdate::ElementUpdate): Deleted.
+        (WebCore::Style::ElementUpdates::ElementUpdates): Deleted.
+        (WebCore::Style::TextUpdate::TextUpdate): Deleted.
+
 2018-04-20  Youenn Fablet  <youenn@apple.com>
 
         WebPage sometimes incorrectly rules out PDF as a mime type that can be showed
index 35c4775..01fdc93 100644 (file)
 namespace WebCore {
 
 struct CacheQueryOptions {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    CacheQueryOptions() = default;
-    CacheQueryOptions(bool ignoreSearch, bool ignoreMethod, bool ignoreVary, String&& cacheName)
-        : ignoreSearch { ignoreSearch }
-        , ignoreMethod { ignoreMethod }
-        , ignoreVary { ignoreVary }
-        , cacheName { WTFMove(cacheName) }
-    {
-    }
-#endif
     CacheQueryOptions isolatedCopy() const { return { ignoreSearch, ignoreMethod, ignoreVary, cacheName.isolatedCopy() }; }
 
     bool ignoreSearch { false };
index 7f17612..87e5f97 100644 (file)
@@ -440,12 +440,6 @@ public:
     };
 
     struct InsertionType {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        InsertionType(bool connectedToDocument, bool treeScopeChanged)
-            : connectedToDocument(connectedToDocument)
-            , treeScopeChanged(treeScopeChanged)
-        { }
-#endif
         bool connectedToDocument { false };
         bool treeScopeChanged { false };
     };
@@ -455,12 +449,6 @@ public:
     virtual void didFinishInsertingNode() { }
 
     struct RemovalType {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        RemovalType(bool disconnectedFromDocument, bool treeScopeChanged)
-            : disconnectedFromDocument(disconnectedFromDocument)
-            , treeScopeChanged(treeScopeChanged)
-        { }
-#endif
         bool disconnectedFromDocument { false };
         bool treeScopeChanged { false };
     };
index 12319fd..bead14e 100644 (file)
@@ -70,14 +70,6 @@ private:
     struct Invalid { };
 
     struct CMYKAColor {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        CMYKAColor() = default;
-        CMYKAColor(Color color, float cyan, float magenta, float yellow, float black, float alpha)
-            : color(color), c(cyan), m(magenta), y(yellow), k(black), a(alpha)
-        {
-        }
-#endif
-
         Color color;
         float c { 0 };
         float m { 0 };
index 07ece26..2eec61d 100644 (file)
@@ -158,14 +158,6 @@ public:
 
 #if ENABLE(DRAG_SUPPORT)
     struct DragTargetResponse {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        DragTargetResponse() = default;
-        DragTargetResponse(bool accept, std::optional<DragOperation> operation)
-            : accept(accept)
-            , operation(operation)
-        {
-        }
-#endif
         bool accept { false };
         std::optional<DragOperation> operation;
     };
index ee0ee1b..05004ef 100644 (file)
@@ -43,13 +43,6 @@ class LayoutRect;
 class RenderElement;
 
 struct AnimationUpdate {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    AnimationUpdate() = default;
-    AnimationUpdate(std::unique_ptr<RenderStyle> style, bool stateChanged)
-        : style(WTFMove(style))
-        , stateChanged(stateChanged)
-    { }
-#endif
     std::unique_ptr<RenderStyle> style;
     bool stateChanged { false };
 };
index 6c66079..c47b2aa 100644 (file)
@@ -337,17 +337,6 @@ struct FontSelectionRequest {
     {
         return WTF::tie(weight, width, slope);
     }
-
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    FontSelectionRequest() = default;
-
-    constexpr FontSelectionRequest(Value weight, Value width, Value slope)
-        : weight(weight)
-        , width(width)
-        , slope(slope)
-    {
-    }
-#endif
 };
 
 constexpr bool operator==(const FontSelectionRequest& a, const FontSelectionRequest& b)
@@ -385,17 +374,6 @@ struct FontSelectionCapabilities {
     Range weight { normalWeightValue() };
     Range width { normalStretchValue() };
     Range slope { normalItalicValue() };
-
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    FontSelectionCapabilities() = default;
-
-    constexpr FontSelectionCapabilities(Range weight, Range width, Range slope)
-        : weight(weight)
-        , width(width)
-        , slope(slope)
-    {
-    }
-#endif
 };
 
 constexpr bool operator==(const FontSelectionCapabilities& a, const FontSelectionCapabilities& b)
index e302a1d..d84edbf 100644 (file)
 namespace WebCore {
 
 struct IceCandidate {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    IceCandidate() = default;
-    IceCandidate(String&& type, String&& foundation, unsigned componentId, String&& transport, unsigned long priority, String&& address, unsigned port, String&& tcpType, String&& relatedAddress, unsigned relatedPort)
-        : type { WTFMove(type) }
-        , foundation { WTFMove(foundation) }
-        , componentId { componentId }
-        , transport { WTFMove(transport) }
-        , priority { priority }
-        , address { WTFMove(address) }
-        , port { port }
-        , tcpType { WTFMove(tcpType) }
-        , relatedAddress { WTFMove(relatedAddress) }
-        , relatedPort { relatedPort }
-    {
-    }
-#endif
-
     String type;
     String foundation;
     unsigned componentId { 0 };
index c860429..dcf3cbc 100644 (file)
@@ -46,14 +46,6 @@ namespace WebCore {
 // to the string.
 
 struct StringWithDirection {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    StringWithDirection() = default;
-    StringWithDirection(String string, TextDirection direction)
-        : string { WTFMove(string) }
-        , direction { direction }
-    {
-    }
-#endif
     String string;
     TextDirection direction { LTR };
 };
index 7a763bb..8bc62f3 100644 (file)
@@ -47,16 +47,6 @@ struct MarkedText {
         Selection,
         DraggedContent,
     };
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    MarkedText() = default;
-    MarkedText(unsigned startOffset, unsigned endOffset, Type type, const RenderedDocumentMarker* marker = nullptr)
-        : startOffset { startOffset }
-        , endOffset { endOffset }
-        , type { type }
-        , marker { marker }
-    {
-    }
-#endif
     unsigned startOffset;
     unsigned endOffset;
     Type type;
index 01aa99b..d9d18af 100644 (file)
@@ -43,15 +43,6 @@ class Text;
 namespace Style {
 
 struct ElementUpdate {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    ElementUpdate() = default;
-    ElementUpdate(std::unique_ptr<RenderStyle> style, Change change, bool recompositeLayer)
-        : style { WTFMove(style) }
-        , change { change }
-        , recompositeLayer { recompositeLayer }
-    {
-    }
-#endif
     std::unique_ptr<RenderStyle> style;
     Change change { NoChange };
     bool recompositeLayer { false };
@@ -60,16 +51,6 @@ struct ElementUpdate {
 enum class DescendantsToResolve { None, ChildrenWithExplicitInherit, Children, All };
 
 struct ElementUpdates {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    ElementUpdates() = default;
-    ElementUpdates(ElementUpdate update, DescendantsToResolve descendantsToResolve, std::optional<ElementUpdate> beforePseudoElementUpdate, std::optional<ElementUpdate> afterPseudoElementUpdate)
-        : update { WTFMove(update) }
-        , descendantsToResolve(descendantsToResolve)
-        , beforePseudoElementUpdate { WTFMove(beforePseudoElementUpdate) }
-        , afterPseudoElementUpdate { WTFMove(afterPseudoElementUpdate) }
-    {
-    }
-#endif
     ElementUpdate update;
     DescendantsToResolve descendantsToResolve { DescendantsToResolve::None };
     std::optional<ElementUpdate> beforePseudoElementUpdate;
@@ -77,16 +58,6 @@ struct ElementUpdates {
 };
 
 struct TextUpdate {
-#if !COMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    TextUpdate() = default;
-    TextUpdate(unsigned offset, unsigned length, std::optional<std::unique_ptr<RenderStyle>> inheritedDisplayContentsStyle)
-        : offset { offset }
-        , length { length }
-        , inheritedDisplayContentsStyle { WTFMove(inheritedDisplayContentsStyle) }
-    {
-    }
-#endif
-
     unsigned offset { 0 };
     unsigned length { std::numeric_limits<unsigned>::max() };
     std::optional<std::unique_ptr<RenderStyle>> inheritedDisplayContentsStyle;
index 6787d30..9b9354e 100644 (file)
@@ -1,3 +1,19 @@
+2018-04-20  Daniel Bates  <dabates@apple.com>
+
+        Remove code for compilers that did not support NSDMI for aggregates
+        https://bugs.webkit.org/show_bug.cgi?id=184599
+
+        Reviewed by Per Arne Vollan.
+
+        Remove workaround for earlier Visual Studio versions that did not support non-static data
+        member initializers (NSDMI) for aggregates. We have since updated all the build.webkit.org
+        and EWS bots to a newer version that supports this feature.
+
+        * bmalloc/BPlatform.h:
+        * bmalloc/List.h:
+        (bmalloc::ListNode::ListNode): Deleted.
+        (bmalloc::List::iterator::iterator): Deleted.
+
 2018-04-19  David Kilzer  <ddkilzer@apple.com>
 
         Enable Objective-C weak references
index 028623e..39516ac 100644 (file)
 /* BCOMPILER_SUPPORTS() - check for a compiler feature */
 #define BCOMPILER_SUPPORTS(FEATURE) (defined BCOMPILER_SUPPORTS_##FEATURE && BCOMPILER_SUPPORTS_##FEATURE)
 
-/* BCOMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES) - compiler supports non-static data member initializers for aggregates */
-#if defined(__cpp_aggregate_nsdmi) && __cpp_aggregate_nsdmi >= 201304
-#define BCOMPILER_SUPPORTS_NSDMI_FOR_AGGREGATES 1
-#endif
-
 /* ==== Platform adaptation macros: these describe properties of the target environment. ==== */
 
 /* BCPU() - the target CPU architecture */
index 48173c8..639edc9 100644 (file)
@@ -30,15 +30,6 @@ namespace bmalloc {
 
 template<typename T>
 struct ListNode {
-#if !BCOMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-    ListNode() = default;
-    ListNode(ListNode<T>* prev, ListNode<T>* next)
-        : prev { prev }
-        , next { next }
-    {
-    }
-#endif
-
     ListNode<T>* prev { nullptr };
     ListNode<T>* next { nullptr };
 };
@@ -48,14 +39,6 @@ class List {
     static_assert(std::is_trivially_destructible<T>::value, "List must have a trivial destructor.");
 
     struct iterator {
-#if !BCOMPILER_SUPPORTS(NSDMI_FOR_AGGREGATES)
-        iterator() = default;
-        iterator(ListNode<T>* node)
-            : m_node(node)
-        {
-        }
-#endif
-
         T* operator*() { return static_cast<T*>(m_node); }
         T* operator->() { return static_cast<T*>(m_node); }