https://bugs.webkit.org/show_bug.cgi?id=177473 has so pretty ugly code to default construct a generic ArrayPtr<T>:
new (&container.get()[i]) std::remove_reference_t<decltype(*container.get())>();
Let's add default_construct_at, which jyasskin suggested I do.
Created attachment 322015 [details]
Attachment 322015 [details] did not pass style-queue:
ERROR: Source/WTF/wtf/StdLibExtras.h:164: default_construct_at is incorrectly named. Don't use underscores in your identifier names. [readability/naming/underscores] 
Total errors found: 1 in 2 files
If any of these errors are false positives, please file a bug against check-webkit-style.
cdumez suggested I do this change straight in #177473 and use it there. Closing to do that instead.
*** This bug has been marked as a duplicate of bug 177473 ***
Comment on attachment 322015 [details]
Unlike the others who commented on this, I do think this might possibly make some call sites a little easier to read, and why not get on board now if it’s the future of C++ anyway. But I don’t think we should land the change without using it anywhere.
Oh, this bug is obsolete. Clearing the flags.
(In reply to Darin Adler from comment #4)
> Comment on attachment 322015 [details]
> Unlike the others who commented on this, I do think this might possibly make
> some call sites a little easier to read, and why not get on board now if
> it’s the future of C++ anyway. But I don’t think we should land the change
> without using it anywhere.
I liked it too, it made the sample code way more readable, but it's admittedly a rare thing so I'm happy not pushing it and leaving the obscure placement new code as-is.