Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r53259 - in branches/release: . boost/dynamic_bitset
From: daniel_james_at_[hidden]
Date: 2009-05-25 16:26:02


Author: danieljames
Date: 2009-05-25 16:26:02 EDT (Mon, 25 May 2009)
New Revision: 53259
URL: http://svn.boost.org/trac/boost/changeset/53259

Log:
Merge dynamic bitset fixes for gcc 4.3.3.

Merged revisions 52879-52881,53050 via svnmerge from
https://svn.boost.org/svn/boost/trunk

........
  r52879 | hkaiser | 2009-05-10 17:52:14 +0100 (Sun, 10 May 2009) | 1 line
  
  Applying patch fixing problem on certain patch levels for gcc.4.3.3/Ubuntu
........
  r52880 | hkaiser | 2009-05-10 17:55:07 +0100 (Sun, 10 May 2009) | 1 line
  
  Fixing the fix by taking into account __GNUC_PATCHLEVEL__ as well
........
  r52881 | hkaiser | 2009-05-10 17:59:27 +0100 (Sun, 10 May 2009) | 1 line
  
  Minor comment edit
........
  r53050 | danieljames | 2009-05-16 15:58:33 +0100 (Sat, 16 May 2009) | 13 lines
  
  Merge dynamic bitset from release.
  
  I think the recent changes in trunk and release were for the same problem. But
  I'm not sure so I've merged them together. Hopefully, the release branch might
  fix the Intel C++ errors as well.
  
  ------------------------------------------------------------------------
  r52960 | dgregor | 2009-05-13 07:11:03 +0100 (Wed, 13 May 2009) | 1 line
  
  Use enum constants rather than local variables for integral constants. Should fix dynamic_bitset failures on GCC 4.3.x
  ------------------------------------------------------------------------
........

Properties modified:
   branches/release/ (props changed)
Text files modified:
   branches/release/boost/dynamic_bitset/dynamic_bitset.hpp | 6 ++++++
   1 files changed, 6 insertions(+), 0 deletions(-)

Modified: branches/release/boost/dynamic_bitset/dynamic_bitset.hpp
==============================================================================
--- branches/release/boost/dynamic_bitset/dynamic_bitset.hpp (original)
+++ branches/release/boost/dynamic_bitset/dynamic_bitset.hpp 2009-05-25 16:26:02 EDT (Mon, 25 May 2009)
@@ -999,11 +999,17 @@
     using detail::dynamic_bitset_impl::access_by_blocks;
     using detail::dynamic_bitset_impl::value_to_type;
 
+#if BOOST_WORKAROUND(__GNUC__, == 4) && (__GNUC_MINOR__ == 3) && (__GNUC_PATCHLEVEL__ == 3)
+ // NOTE: Explicit qualification of "bits_per_block"
+ // breaks compilation on gcc 4.3.3
+ enum { no_padding = bits_per_block == CHAR_BIT * sizeof(Block) };
+#else
     // NOTE: Explicitly qualifying "bits_per_block" to workaround
     // regressions of gcc 3.4.x
     enum { no_padding =
         dynamic_bitset<Block, Allocator>::bits_per_block
         == CHAR_BIT * sizeof(Block) };
+#endif
 
     enum { enough_table_width = table_width >= CHAR_BIT };
 


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk