[Blink/WTF] Fix operator new usage

Fix operator new resolution failures in:
- third_party/blink/renderer/platform/wtf/construct_traits.h
- third_party/blink/renderer/platform/wtf/thread_specific.h

They intend to call the global operator defined in
third_party/blink/renderer/platform/wtf/allocator/allocator.h

But the operator resolution may fail if |T| has user-defined operator
new().

https://godbolt.org/z/zxnYEj4We

Change-Id: Id97a570e098404348e7a50fcdfba459229a71eef
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4727836
Auto-Submit: Mikihito Matsuura <mikt@google.com>
Reviewed-by: Kentaro Hara <haraken@chromium.org>
Commit-Queue: Kentaro Hara <haraken@chromium.org>
Cr-Commit-Position: refs/heads/main@{#1176551}
diff --git a/third_party/blink/renderer/platform/wtf/construct_traits.h b/third_party/blink/renderer/platform/wtf/construct_traits.h
index 3a8203a..e5a409b 100644
--- a/third_party/blink/renderer/platform/wtf/construct_traits.h
+++ b/third_party/blink/renderer/platform/wtf/construct_traits.h
@@ -23,7 +23,8 @@
   // placement new.
   template <typename... Args>
   static T* Construct(void* location, Args&&... args) {
-    return new (NotNullTag::kNotNull, location) T(std::forward<Args>(args)...);
+    return ::new (NotNullTag::kNotNull, location)
+        T(std::forward<Args>(args)...);
   }
 
   // After constructing elements using memcopy or memmove (or similar)
diff --git a/third_party/blink/renderer/platform/wtf/thread_specific.h b/third_party/blink/renderer/platform/wtf/thread_specific.h
index 124caaef..05247e1 100644
--- a/third_party/blink/renderer/platform/wtf/thread_specific.h
+++ b/third_party/blink/renderer/platform/wtf/thread_specific.h
@@ -133,7 +133,7 @@
     }
 
     Set(*ptr);
-    new (NotNullTag::kNotNull, *ptr) T;
+    ::new (NotNullTag::kNotNull, *ptr) T;
   }
   return *ptr;
 }