blob: 7b33b96470528ec39489e48f330ffa6b1b27b25b [file] [log] [blame]
Eric Fiselier95b0d0f2014-08-09 02:39:03 +00001//===----------------------------------------------------------------------===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is dual licensed under the MIT and the University of Illinois Open
6// Source Licenses. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10// <cmath>
11
Eric Fiselierf5f58622014-08-09 02:43:16 +000012// isnan
Eric Fiselier95b0d0f2014-08-09 02:39:03 +000013
14// XFAIL: linux
15
16#include <cmath>
17#include <type_traits>
18#include <cassert>
19
20int main()
21{
22#ifdef isnan
23#error isnan defined
24#endif
25 static_assert((std::is_same<decltype(std::isnan((float)0)), bool>::value), "");
26 static_assert((std::is_same<decltype(std::isnan((double)0)), bool>::value), "");
27 static_assert((std::is_same<decltype(std::isnan(0)), bool>::value), "");
28 static_assert((std::is_same<decltype(std::isnan((long double)0)), bool>::value), "");
29 assert(std::isnan(-1.0) == false);
30}