Defining macros for min and max breaks using std::min and std::max. Defining NOMINMAX before including the header stops them from being defined.
See https://web.archive.org/web/20170911092732/https://support.microsoft.com/en-us/help/143208/prb-using-stl-in-windows-program-can-cause-min-max-conflicts for details.
This patch is part of the series to make flang compilable with MS Visual Studio.