1232924Stheraven// -*- C++ -*-
2232924Stheraven//===----------------------------------------------------------------------===//
3232924Stheraven//
4232924Stheraven//                     The LLVM Compiler Infrastructure
5232924Stheraven//
6232924Stheraven// This file is dual licensed under the MIT and the University of Illinois Open
7232924Stheraven// Source Licenses. See LICENSE.TXT for details.
8232924Stheraven//
9232924Stheraven//===----------------------------------------------------------------------===//
10232924Stheraven
11232924Stheraven#ifdef min
12262801Sdim#if defined(_MSC_VER) && ! defined(__clang__)
13262801Sdim_LIBCPP_WARNING("macro min is incompatible with C++.  Try #define NOMINMAX "
14262801Sdim                "before any Windows header. #undefing min")
15262801Sdim#else
16241903Sdim#warning: macro min is incompatible with C++.  #undefing min
17262801Sdim#endif
18232924Stheraven#undef min
19232924Stheraven#endif
20232924Stheraven
21232924Stheraven#ifdef max
22262801Sdim#if defined(_MSC_VER) && ! defined(__clang__)
23262801Sdim_LIBCPP_WARNING("macro max is incompatible with C++.  Try #define NOMINMAX "
24262801Sdim                "before any Windows header. #undefing max")
25262801Sdim#else
26241903Sdim#warning: macro max is incompatible with C++.  #undefing max
27262801Sdim#endif
28232924Stheraven#undef max
29232924Stheraven#endif
30