]> git.lyx.org Git - lyx.git/blobdiff - boost/boost/detail/atomic_count_win32.hpp
Fixed some lines that were too long. It compiled afterwards.
[lyx.git] / boost / boost / detail / atomic_count_win32.hpp
index 04827577650827d642aab0e99334b1da8ce06bd7..0de25377fa5e6ad42d2740dd5a26efc22fa4601b 100644 (file)
@@ -1,22 +1,23 @@
 #ifndef BOOST_DETAIL_ATOMIC_COUNT_WIN32_HPP_INCLUDED
 #define BOOST_DETAIL_ATOMIC_COUNT_WIN32_HPP_INCLUDED
 
-#if _MSC_VER >= 1020
-#pragma once
+// MS compatible compilers support #pragma once
+
+#if defined(_MSC_VER) && (_MSC_VER >= 1020)
+# pragma once
 #endif
 
 //
 //  boost/detail/atomic_count_win32.hpp
 //
-//  Copyright (c) 2001, 2002 Peter Dimov and Multi Media Ltd.
+//  Copyright (c) 2001-2005 Peter Dimov
 //
-//  Permission to copy, use, modify, sell and distribute this software
-//  is granted provided this copyright notice appears in all copies.
-//  This software is provided "as is" without express or implied
-//  warranty, and with no claim as to its suitability for any purpose.
+// Distributed under the Boost Software License, Version 1.0. (See
+// accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
 //
 
-#include <boost/detail/winapi.hpp>
+#include <boost/detail/interlocked.hpp>
 
 namespace boost
 {
@@ -28,31 +29,31 @@ class atomic_count
 {
 public:
 
-    explicit atomic_count(long v): value_(v)
+    explicit atomic_count( long v ): value_( v )
     {
     }
 
     long operator++()
     {
-        return winapi::InterlockedIncrement(&value_);
+        return BOOST_INTERLOCKED_INCREMENT( &value_ );
     }
 
     long operator--()
     {
-        return winapi::InterlockedDecrement(&value_);
+        return BOOST_INTERLOCKED_DECREMENT( &value_ );
     }
 
     operator long() const
     {
-        return value_;
+        return static_cast<long const volatile &>( value_ );
     }
 
 private:
 
-    atomic_count(atomic_count const &);
-    atomic_count & operator=(atomic_count const &);
+    atomic_count( atomic_count const & );
+    atomic_count & operator=( atomic_count const & );
 
-    volatile long value_;
+    long value_;
 };
 
 } // namespace detail