[webkit-dev] Watch out for std::optional's move constructor

Michael Catanzaro mcatanzaro at igalia.com
Tue Dec 18 11:34:55 PST 2018

I know I'm getting a bit far afield here, but:

On Mon, Dec 17, 2018 at 9:26 PM, Ryosuke Niwa <rniwa at webkit.org> wrote:
> But then our behavior of HashMap which doesn't accept the POD 
> integral value of 0 as a key

This behavior is really unexpected and dangerous [1], and we should 
seriously consider changing it. No doubt lots of bugs caused by this 
are just waiting to be uncovered. I've been working on WebKit since 
2014 and didn't know about this until last month.

Another oddity: I recently learned that AtomicStrings are actually 
interned strings. WTF. Why not call them that? I had thought for years 
that they were strings safe to be shared across threads, like other 
atomics. Not at all. Maybe this was dumb of me, but it could have been 
avoided by better naming.


[1] https://trac.webkit.org/changeset/238407/webkit

More information about the webkit-dev mailing list