- bool is_lock_free() const volatile;
- void store( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- unsigned long long load( memory_order = memory_order_seq_cst ) volatile;
- unsigned long long exchange( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- bool compare_exchange_weak( unsigned long long&, unsigned long long,
- memory_order, memory_order ) volatile;
- bool compare_exchange_strong( unsigned long long&, unsigned long long,
- memory_order, memory_order ) volatile;
- bool compare_exchange_weak( unsigned long long&, unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- bool compare_exchange_strong( unsigned long long&, unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- void fence( memory_order ) const volatile;
- unsigned long long fetch_add( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- unsigned long long fetch_sub( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- unsigned long long fetch_and( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- unsigned long long fetch_or( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
- unsigned long long fetch_xor( unsigned long long,
- memory_order = memory_order_seq_cst ) volatile;
-
- CPP0X( atomic_ullong() = default; )
- CPP0X( constexpr atomic_ullong( unsigned long long __v__ ) : __f__( __v__) { } )
- CPP0X( atomic_ullong( const atomic_ullong& ) = delete; )
- atomic_ullong& operator =( const atomic_ullong& ) CPP0X(=delete);
-
- unsigned long long operator =( unsigned long long __v__ ) volatile
- { store( __v__ ); return __v__; }
-
- unsigned long long operator ++( int ) volatile
- { return fetch_add( 1 ); }
-
- unsigned long long operator --( int ) volatile
- { return fetch_sub( 1 ); }
-
- unsigned long long operator ++() volatile
- { return fetch_add( 1 ) + 1; }
-
- unsigned long long operator --() volatile
- { return fetch_sub( 1 ) - 1; }
-
- unsigned long long operator +=( unsigned long long __v__ ) volatile
- { return fetch_add( __v__ ) + __v__; }
-
- unsigned long long operator -=( unsigned long long __v__ ) volatile
- { return fetch_sub( __v__ ) - __v__; }
-
- unsigned long long operator &=( unsigned long long __v__ ) volatile
- { return fetch_and( __v__ ) & __v__; }
-
- unsigned long long operator |=( unsigned long long __v__ ) volatile
- { return fetch_or( __v__ ) | __v__; }
-
- unsigned long long operator ^=( unsigned long long __v__ ) volatile
- { return fetch_xor( __v__ ) ^ __v__; }
-
- friend void atomic_store_explicit( volatile atomic_ullong*, unsigned long long,
- memory_order );
- friend unsigned long long atomic_load_explicit( volatile atomic_ullong*,
- memory_order );
- friend unsigned long long atomic_exchange_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
- friend bool atomic_compare_exchange_weak_explicit( volatile atomic_ullong*,
- unsigned long long*, unsigned long long, memory_order, memory_order );
- friend bool atomic_compare_exchange_strong_explicit( volatile atomic_ullong*,
- unsigned long long*, unsigned long long, memory_order, memory_order );
- friend void atomic_fence( const volatile atomic_ullong*, memory_order );
- friend unsigned long long atomic_fetch_add_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
- friend unsigned long long atomic_fetch_sub_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
- friend unsigned long long atomic_fetch_and_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
- friend unsigned long long atomic_fetch_or_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
- friend unsigned long long atomic_fetch_xor_explicit( volatile atomic_ullong*,
- unsigned long long, memory_order );
-
-CPP0X(private:)
+ bool is_lock_free() const volatile;
+ void store( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long load( memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long exchange( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ bool compare_exchange_weak( unsigned long long&, unsigned long long,
+ memory_order, memory_order ) volatile;
+ bool compare_exchange_strong( unsigned long long&, unsigned long long,
+ memory_order, memory_order ) volatile;
+ bool compare_exchange_weak( unsigned long long&, unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ bool compare_exchange_strong( unsigned long long&, unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long fetch_add( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long fetch_sub( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long fetch_and( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long fetch_or( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+ unsigned long long fetch_xor( unsigned long long,
+ memory_order = memory_order_seq_cst ) volatile;
+
+ CPP0X( atomic_ullong() = default; )
+ CPP0X( constexpr atomic_ullong( unsigned long long __v__ ) : __f__( __v__) {
+ } )
+ CPP0X( atomic_ullong( const atomic_ullong& ) = delete; )
+ atomic_ullong& operator =( const atomic_ullong& ) CPP0X(=delete);
+
+ unsigned long long operator =( unsigned long long __v__ ) volatile
+ { store( __v__ ); return __v__; }
+
+ unsigned long long operator ++( int ) volatile
+ { return fetch_add( 1 ); }
+
+ unsigned long long operator --( int ) volatile
+ { return fetch_sub( 1 ); }
+
+ unsigned long long operator ++() volatile
+ { return fetch_add( 1 ) + 1; }
+
+ unsigned long long operator --() volatile
+ { return fetch_sub( 1 ) - 1; }
+
+ unsigned long long operator +=( unsigned long long __v__ ) volatile
+ { return fetch_add( __v__ ) + __v__; }
+
+ unsigned long long operator -=( unsigned long long __v__ ) volatile
+ { return fetch_sub( __v__ ) - __v__; }
+
+ unsigned long long operator &=( unsigned long long __v__ ) volatile
+ { return fetch_and( __v__ ) & __v__; }
+
+ unsigned long long operator |=( unsigned long long __v__ ) volatile
+ { return fetch_or( __v__ ) | __v__; }
+
+ unsigned long long operator ^=( unsigned long long __v__ ) volatile
+ { return fetch_xor( __v__ ) ^ __v__; }
+
+ friend void atomic_store_explicit( volatile atomic_ullong*, unsigned long long,
+ memory_order );
+ friend unsigned long long atomic_load_explicit( volatile atomic_ullong*,
+ memory_order );
+ friend unsigned long long atomic_exchange_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+ friend bool atomic_compare_exchange_weak_explicit( volatile atomic_ullong*,
+ unsigned long long*, unsigned long long, memory_order, memory_order );
+ friend bool atomic_compare_exchange_strong_explicit( volatile atomic_ullong*,
+ unsigned long long*, unsigned long long, memory_order, memory_order );
+ friend unsigned long long atomic_fetch_add_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+ friend unsigned long long atomic_fetch_sub_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+ friend unsigned long long atomic_fetch_and_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+ friend unsigned long long atomic_fetch_or_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+ friend unsigned long long atomic_fetch_xor_explicit( volatile atomic_ullong*,
+ unsigned long long, memory_order );
+
+ CPP0X(private:)