The problem is detecting other definitions of min/max (you'd need #ifdef min #pragma error, or something in each compilation unit which is using min/max...). If we only use the std:: versions, it shouldn't matter anyways.