If you call findKey with K an integer type having a value of zero then at appx line #441 in lockfree_dictionary.h: (value = result->v;) will fail since result is null. It reaches this line since the previous if checks for node2->key != key which is false on the bookend nodes, so it thinks it found a match. Is zero a reserved value for a key? If so this should be documented; otherwise the if should include a null check on result.
View and moderate all "bugs Discussion" comments posted by this user
Mark all as spam, and block user from posting to "Bugs"
The bookend nodes key value uses the default constructor, so a non integer type K with a different default initializer may have this issue on a non-zero value. (correct?)