1 // -*- C++ -*- 2 //===----------------------------------------------------------------------===// 3 // 4 // The LLVM Compiler Infrastructure 5 // 6 // This file is dual licensed under the MIT and the University of Illinois Open 7 // Source Licenses. See LICENSE.TXT for details. 8 // 9 //===----------------------------------------------------------------------===// 10 11 #ifdef min 12 #if defined(_MSC_VER) && ! defined(__clang__) 13 _LIBCPP_WARNING("macro min is incompatible with C++. Try #define NOMINMAX " 14 "before any Windows header. #undefing min") 15 #else 16 #warning: macro min is incompatible with C++. #undefing min 17 #endif 18 #undef min 19 #endif 20 21 #ifdef max 22 #if defined(_MSC_VER) && ! defined(__clang__) 23 _LIBCPP_WARNING("macro max is incompatible with C++. Try #define NOMINMAX " 24 "before any Windows header. #undefing max") 25 #else 26 #warning: macro max is incompatible with C++. #undefing max 27 #endif 28 #undef max 29 #endif 30