-----Original Message----- From: Boost
On Behalf Of Mike via Boost Sent: 22 August 2019 10:17 To: boost@lists.boost.org Cc: Mike Subject: Re: [boost] Compliance with Boost copyright and license guidelines Gesendet: Donnerstag, 22. August 2019 um 11:06 Uhr Von: "Hans Dembinski via Boost"
The max/min macro issue does not seem to be relevant anymore in modern compilers. I was completely unaware of this in Boost.Histogram and the code works fine on all msvc versions which support C++14. I added the patches to Histogram to get rid of this warning, but now that code became a lot less readable. I am considering to revert this change and propose instead to remove the min/max macro check from the inspection list. Or is there a way to blacklist it locally for my library? This is not a compiler problem. The windows.h file (https://en.wikipedia.org/wiki/Windows.h) is defining those macros unless special workarounds are applied like defining NOMINMAX before including the file.
But it is a problem for all those who *use* Boost code *and* Windows - and that is a LOT of people, most perhaps. So there is a longstanding Boost policy that we avoid annoying Windows users. It's a minor nuisance and trivial ugliness in Boost code, adding brackets to (std::max) and (std::numeric_limits<>::max)() etc. Paul PS I suspect that it seemed very cool of Microsoft to define these min and max macros, probably about 30 ago, perhaps even by Bill himself? Paul A. Bristow Prizet Farmhouse Kendal, Cumbria LA8 8AB UK