On 12/2/20 1:17 AM, Kostas Savvidis via Boost wrote:
On Dec 2, 2020, at 00:01, Edward Diener via Boost
wrote: OTOH if he is compiling with C++11 on up he is probably using std::random instead of boost::random so your choice is right.
I am providing my new, better RNG in boost::random since convincing LWG to include it in std::random will take some while longer ;)
(btw, std:array is not a part of any interfaces of boost::random it is a purely an internal issue which, yes, I know, is not considered as serious)
Perhaps not in the particular case of array, but having user-selectable std or boost components as class members is even more serious than in interface (e.g. function arguments). Class member types do not get reflected in the symbol names, which makes ABI discrepancies go unnoticed by the linker and cause weird bugs in runtime. This is why compile time selection between types of internal components is generally discouraged.