]> git.ipfire.org Git - thirdparty/gcc.git/blame - libstdc++-v3/testsuite/20_util/is_member_pointer/value.cc
Update copyright years.
[thirdparty/gcc.git] / libstdc++-v3 / testsuite / 20_util / is_member_pointer / value.cc
CommitLineData
439d14a0 1// { dg-options "-std=gnu++11" }
2// { dg-do compile }
29928af2 3
f1717362 4// Copyright (C) 2011-2016 Free Software Foundation, Inc.
29928af2 5//
6// This file is part of the GNU ISO C++ Library. This library is free
7// software; you can redistribute it and/or modify it under the
8// terms of the GNU General Public License as published by the
9// Free Software Foundation; either version 3, or (at your option)
10// any later version.
11//
12// This library is distributed in the hope that it will be useful,
13// but WITHOUT ANY WARRANTY; without even the implied warranty of
14// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15// GNU General Public License for more details.
16//
17// You should have received a copy of the GNU General Public License along
18// with this library; see the file COPYING3. If not see
19// <http://www.gnu.org/licenses/>.
20
21#include <type_traits>
29928af2 22#include <testsuite_tr1.h>
23
24void test01()
25{
29928af2 26 using std::is_member_pointer;
27 using namespace __gnu_test;
28
439d14a0 29 static_assert(test_category<is_member_pointer, int (ClassType::*)>(true), "");
30 static_assert(test_category<is_member_pointer,
31 const int (ClassType::*)>(true), "");
32 static_assert(test_category<is_member_pointer,
33 ClassType (ClassType::*)>(true), "");
29928af2 34
439d14a0 35 static_assert(test_category<is_member_pointer,
36 int (ClassType::*) (int)>(true), "");
37 static_assert(test_category<is_member_pointer,
38 int (ClassType::*) (int) const>(true), "");
39 static_assert(test_category<is_member_pointer,
40 int (ClassType::*) (float, ...)>(true), "");
41 static_assert(test_category<is_member_pointer,
42 ClassType (ClassType::*) (ClassType)>(true), "");
43 static_assert(test_category<is_member_pointer,
44 float (ClassType::*) (int, float, int[], int&)>(true), "");
29928af2 45
46 // Sanity check.
439d14a0 47 static_assert(test_category<is_member_pointer, ClassType>(false), "");
29928af2 48}