These are both effectively-immutable accessors with lazy initialization. 
However, when accessed from multiple threads a race can occur initializing the 
name_to_index_ map. This seems like a bug rather than a purposeful design 
choice based off the cpp/conventions.rst section on Immutability. I'm happy to 
send a PR if this is agreed to be a bug and what an acceptable fix is (e.g. 
just eagerly initialize, always use a mutex, last-writer-wins with some sort of 
atomic ptr, etc.).

Thanks,
Gene


________________________________
This communication is intended only for the addressee(s), may contain 
confidential, privileged or proprietary information, and may be protected by US 
and other laws. Your acceptance of this communication constitutes your 
agreement to keep confidential all the confidential information contained in 
this communication, as well as any information derived by you from the 
confidential information contained in this communication. We do not waive any 
confidentiality by misdelivery.

If you receive this communication in error, any use, dissemination, printing or 
copying is strictly prohibited; please destroy all electronic and paper copies 
and notify the sender immediately. Nothing in this email is intended to 
constitute (1) investment or trading advice or recommendations or any 
advertisement or (2) a solicitation of an investment in any jurisdiction in 
which such a solicitation would be unlawful.

Please note that PDT Partners, LLC, including its affiliates, reserves the 
right to intercept, archive, monitor and review all communications to and from 
its network.

Reply via email to