Opened 14 years ago

Closed 14 years ago

#2172 closed Feature Requests (fixed)

dynamic_bitset constructor problem

Reported by: rick68@… Owned by: Gennaro Prota
Milestone: Boost 1.37.0 Component: dynamic_bitset
Version: Boost 1.35.0 Severity: Problem
Keywords: constructor dispatch iterator InputIterator overload size_type integral integer Cc: gennaro.prota@…

Description

Two constiructors in dynamic_bitset:

============================================ dynamic_bitset(size_type num_bits, unsigned long value = 0, const Allocator& alloc = Allocator())

and

template <typename BlockInputIterator> dynamic_bitset(BlockInputIterator first, BlockInputIterator last, const Allocator& alloc = Allocator()) ============================================

If I want to create dynamic_bitset object with 8 bits and default value 0x07 ("dynamic_bitset(8, 0x07)"), that will use second constructor, not first.

Change History (3)

comment:1 by Gennaro Prota, 14 years ago

Cc: gennaro.prota@… added
Owner: changed from jsiek to Gennaro Prota
Status: newassigned

Yep. The match is normal; but the second constructor should detect the case and "do the right thing", as standard sequences are required to do (though, of course, dynamic_bitset isn't such a beast).

I had implemented this, but didn't commit it because, back then, I didn't have enough time to follow the regression reports, and the code has (by experience) a fair potential to break on several broken compilers and libraries (yeah... broken on broken :-)). I'll do it now, as soon as I'll see the result of some other changes I applied this morning. BTW, I only saw your report today.

Thanks,
Gennaro.

comment:2 by Gennaro Prota, 14 years ago

Keywords: dispatch iterator InputIterator overload size_type integral integer added
Milestone: Boost 1.36.0Boost 1.37.0
Type: BugsFeature Requests

comment:3 by Gennaro Prota, 14 years ago

Resolution: fixed
Status: assignedclosed

It's now committed, both on trunk and branches/release, so it will be in Boost 1.37.0. The updated documentation can be browsed at

  • trunk/libs/dynamic_bitset/dynamic_bitset.html

or

  • branches/release/libs/dynamic_bitset/dynamic_bitset.html
Note: See TracTickets for help on using tickets.