]>
git.ipfire.org Git - thirdparty/gcc.git/blob - libstdc++-v3/testsuite/29_atomics/headers/atomic/macros.cc
1 // { dg-options "-std=gnu++0x" }
4 // Copyright (C) 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
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)
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.
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/>.
23 #ifndef ATOMIC_BOOL_LOCK_FREE
24 # error "ATOMIC_BOOL_LOCK_FREE must be a macro"
27 #ifndef ATOMIC_CHAR_LOCK_FREE
28 # error "ATOMIC_CHAR_LOCK_FREE must be a macro"
31 #ifndef ATOMIC_CHAR16_T_LOCK_FREE
32 # error "ATOMIC_CHAR16_T_LOCK_FREE must be a macro"
35 #ifndef ATOMIC_CHAR32_T_LOCK_FREE
36 # error "ATOMIC_CHAR32_T_LOCK_FREE must be a macro"
39 #ifndef ATOMIC_WCHAR_T_LOCK_FREE
40 # error "ATOMIC_WCHAR_T_LOCK_FREE must be a macro"
43 #ifndef ATOMIC_SHORT_LOCK_FREE
44 # error "ATOMIC_SHORT_LOCK_FREE must be a macro"
47 #ifndef ATOMIC_INT_LOCK_FREE
48 # error "ATOMIC_INT_LOCK_FREE must be a macro"
51 #ifndef ATOMIC_LONG_LOCK_FREE
52 # error "ATOMIC_LONG_LOCK_FREE must be a macro"
55 #ifndef ATOMIC_LLONG_LOCK_FREE
56 # error "ATOMIC_LLONG_LOCK_FREE must be a macro"
59 #ifndef ATOMIC_POINTER_LOCK_FREE
60 # error "ATOMIC_POINTER_LOCK_FREE must be a macro"
63 #ifndef ATOMIC_FLAG_INIT
64 #error "ATOMIC_FLAG_INIT_must_be_a_macro"
67 #ifndef ATOMIC_VAR_INIT
68 #error "ATOMIC_VAR_INIT_must_be_a_macro"
72 extern void abort(void);
76 #if (ATOMIC_BOOL_LOCK_FREE != 1 && ATOMIC_BOOL_LOCK_FREE != 2)
80 #if (ATOMIC_CHAR_LOCK_FREE != 1 && ATOMIC_CHAR_LOCK_FREE != 2)
84 #if (ATOMIC_CHAR16_T_LOCK_FREE != 1 && ATOMIC_CHAR16_T_LOCK_FREE != 2)
88 #if (ATOMIC_CHAR32_T_LOCK_FREE != 1 && ATOMIC_CHAR32_T_LOCK_FREE != 2)
92 #if (ATOMIC_WCHAR_T_LOCK_FREE != 1 && ATOMIC_WCHAR_T_LOCK_FREE != 2)
96 #if (ATOMIC_SHORT_LOCK_FREE != 1 && ATOMIC_SHORT_LOCK_FREE != 2)
100 #if (ATOMIC_INT_LOCK_FREE != 1 && ATOMIC_INT_LOCK_FREE != 2)
104 #if (ATOMIC_LONG_LOCK_FREE != 1 && ATOMIC_LONG_LOCK_FREE != 2)
108 #if (ATOMIC_LLONG_LOCK_FREE != 1 && ATOMIC_LLONG_LOCK_FREE != 2)
112 #if (ATOMIC_POINTER_LOCK_FREE != 1 && ATOMIC_POINTER_LOCK_FREE != 2)