blob: 5df9412c64fd37b71962dc92f81443854ec9a093 [file] [log] [blame]
Howard Hinnantab4f4382011-11-29 16:45:27 +00001// -*- 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
Howard Hinnant80b84d42013-10-04 21:14:44 +000012#if defined(_MSC_VER) && ! defined(__clang__)
Yaron Kerenc0299d72013-11-15 23:41:01 +000013_LIBCPP_WARNING("macro min is incompatible with C++. Try #define NOMINMAX "
14 "before any Windows header. #undefing min")
Howard Hinnant80b84d42013-10-04 21:14:44 +000015#else
Howard Hinnant49713b42012-09-03 18:13:11 +000016#warning: macro min is incompatible with C++. #undefing min
Howard Hinnant80b84d42013-10-04 21:14:44 +000017#endif
Howard Hinnantab4f4382011-11-29 16:45:27 +000018#undef min
19#endif
20
21#ifdef max
Howard Hinnant80b84d42013-10-04 21:14:44 +000022#if defined(_MSC_VER) && ! defined(__clang__)
Yaron Kerenc0299d72013-11-15 23:41:01 +000023_LIBCPP_WARNING("macro max is incompatible with C++. Try #define NOMINMAX "
24 "before any Windows header. #undefing max")
Howard Hinnant80b84d42013-10-04 21:14:44 +000025#else
Howard Hinnant49713b42012-09-03 18:13:11 +000026#warning: macro max is incompatible with C++. #undefing max
Howard Hinnant80b84d42013-10-04 21:14:44 +000027#endif
Howard Hinnantab4f4382011-11-29 16:45:27 +000028#undef max
29#endif