Modify

Opened 9 months ago

Closed 2 months ago

#12508 closed Bugs (fixed)

regression in boost recursive variant

Reported by: mike.gresens@… Owned by: apolukhin
Milestone: Boost 1.64.0 Component: variant
Version: Boost 1.62.0 Severity: Regression
Keywords: Cc:

Description

Hi,

see added sample code (std=c++14).

build with boost1.61: fine

build with boost1.62: broken

gcc (Ubuntu 5.4.0-6ubuntu1~16.04.2) 5.4.0 20160609

Most important compiler errors (i think):

source/test.cpp:104:46:   required from here
/usr/include/c++/5/bits/hashtable_policy.h:85:34: error: no match for call to ‘(const hessian::hash) (const boost::recursive_variant_&)’
  noexcept(declval<const _Hash&>()(declval<const _Key&>()))>
                                  ^
source/test.cpp:59:9: note: candidate: size_t hessian::hash::operator()(const value_t&) const
  size_t operator()(const value_t& value) const noexcept;
         ^
source/test.cpp:59:9: note:   no known conversion for argument 1 from ‘const boost::recursive_variant_’ to ‘const value_t& {aka const boost::variant<boost::detail::variant::recursive_flag<boost::blank>, bool, int, long int, double, boost::posix_time::ptime, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<unsigned char, std::char_traits<unsigned char>, std::allocator<unsigned char> >, std::vector<boost::recursive_variant_, std::allocator<boost::recursive_variant_> >, std::unordered_map<boost::recursive_variant_, boost::recursive_variant_, hessian::hash, std::equal_to<boost::recursive_variant_>, std::allocator<std::pair<const boost::recursive_variant_, boost::recursive_variant_> > >, std::unordered_map<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::recursive_variant_, std::hash<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::equal_to<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > >, std::allocator<std::pair<const std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, boost::recursive_variant_> > > >&}’

Attachments (2)

test.cpp (2.5 KB) - added by mike.gresens@… 9 months ago.
sample code
errors.txt (12.2 KB) - added by mike.gresens@… 9 months ago.
compiler errors

Download all attachments as: .zip

Change History (5)

Changed 9 months ago by mike.gresens@…

sample code

Changed 9 months ago by mike.gresens@…

compiler errors

comment:1 Changed 6 months ago by apolukhin

  • Milestone To Be Determined deleted
  • Owner changed from ebf to apolukhin
  • Status changed from new to assigned

Fixed by Mikhail Maximov in e0b65c01. Fix will appear in Boost 1.64

comment:2 Changed 5 months ago by apolukhin

  • Milestone set to Boost 1.64.0

comment:3 Changed 2 months ago by apolukhin

  • Resolution set to fixed
  • Status changed from assigned to closed

Add Comment

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain apolukhin.
The resolution will be deleted. Next status will be 'reopened'.
Author


E-mail address and user name can be saved in the Preferences.

 
Note: See TracTickets for help on using tickets.