Boost logo

Boost Users :

Subject: [Boost-users] [signals2] VS 2005 error with deconstruct.hpp
From: Nat Goodspeed (nat_at_[hidden])
Date: 2009-02-23 16:05:22


One small glitch in the 2009-02-11 signals2 snapshot [1].

When a source file containing only:

#include <boost/signals2.hpp>

is compiled with Visual Studio 2005, it produces:

cl /EHsc /I libraries/include signals2-glitch.cpp
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 14.00.50727.762
for 80x86

Copyright (C) Microsoft Corporation. All rights reserved.

signals2-glitch.cpp
libraries/include\boost/signals2/deconstruct.hpp(510) : error C2874:
using-declaration causes a multiple declaration of
'boost::signals2::detail::deconstruct_access'
         libraries/include\boost/signals2/deconstruct.hpp(233) : see
declaration of 'boost::signals2::detail::deconstruct_access'

This is the line in question, near the bottom of
boost/signals2/deconstruct.hpp:

using detail::deconstruct_access;

I'm not sure what the intent is for that line, but removing it solves
that problem without, as far as I'm aware, introducing new problems.
I've attached a patch file.

This line caused me no problems on Mac or Linux. Neither does its removal.

[1]
http://www.boostpro.com/vault/index.php?action=downloadfile&filename=signals2-2009-02-11.zip&directory=thread_safe_signals&


*** boost/signals2/deconstruct.hpp~ Thu Feb 5 18:58:10 2009
--- boost/signals2/deconstruct.hpp Mon Feb 23 15:05:44 2009
***************
*** 507,514 ****
      return detail::deconstruct_access::deconstruct<T>(a1,a2,a3,a4,a5,a6,a7,a8,a9);
  }
  
- using detail::deconstruct_access;
-
  #endif
  
  } // namespace signals2
--- 507,512 ----


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net