greater.pass.cpp revision c52f43e72dfcea03037729649da84c23b3beb04a
1ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl//===----------------------------------------------------------------------===// 2ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// 3ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// The LLVM Compiler Infrastructure 4ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// 5ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// This file is distributed under the University of Illinois Open Source 6ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// License. See LICENSE.TXT for details. 7ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// 8ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl//===----------------------------------------------------------------------===// 9ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl 10ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// <functional> 11ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl 12ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl// greater 13ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl 14ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl#include <functional> 15ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl#include <type_traits> 16ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl#include <cassert> 17ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl 18ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixlint main() 19ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl{ 20ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl typedef std::greater<int> F; 21ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl const F f = F(); 22ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl static_assert((std::is_base_of<std::binary_function<int, int, bool>, F>::value), ""); 23ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl assert(!f(36, 36)); 24ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl assert(f(36, 6)); 25ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl assert(!f(6, 36)); 26ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl} 27ad96eda8944ab1c1ba55715c50d9d6f0a3ed1dcarmvixl