Modify

Ticket #5934 (closed Bugs: fixed)

Opened 3 years ago

Last modified 3 years ago

boost/math/tools/tuple.hpp omits "tr1/" from #include directive.

Reported by: David Oliver <doliver@…> Owned by: johnmaddock
Milestone: To Be Determined Component: math
Version: Boost 1.47.0 Severity: Problem
Keywords: Cc:

Description

In version_1_47_0 and the current head (Revision 74542), boost/math/tools/tuple.hpp includes at line 34 the C++11 header <tuple>, rather than the TR1 header <tr1/tuple>:

#elif defined(BOOST_HAS_TR1_TUPLE)

#include <tuple>

namespace boost{ namespace math{

using ::std::tr1::tuple;

// [6.1.3.2] Tuple creation functions
using ::std::tr1::ignore;
using ::std::tr1::make_tuple;
using ::std::tr1::tie;
using ::std::tr1::get;

// [6.1.3.3] Tuple helper classes
using ::std::tr1::tuple_size;
using ::std::tr1::tuple_element;

}}

#elif  ...

With gcc 4.4.3, without std=c++0x or std=gnu++0x specified, this produces a compatibility warning; other compilers/versions are likely to fail to find the header.

Changing the line to:

#include <tr1/tuple>

makes the compilation (and my unit tests) successful.

Cheers!

David Oliver.

Attachments

Change History

comment:1 Changed 3 years ago by johnmaddock

Actually <tuple> is the TR1-conforming include and <tr1/tuple> is a gcc-ism, will fix anyway.

comment:2 Changed 3 years ago by johnmaddock

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

(In [74891]) GCC workaround when using TR1 tuple. Fixes #5934.

comment:3 Changed 3 years ago by David Oliver <doliver@…>

Thanks for fixing. I should have realized that <tr1/tuple> was a gcc-ism, but the compatibility warning makes it sound authoritative.

Cheers!

David.

comment:4 Changed 3 years ago by johnmaddock

(In [74984]) Merge recent bug fixes from Trunk. Refs #6014 Refs #5832 Refs #5934 Refs #6001 Refs #5982 Refs #5914 Refs #5927

View

Add a comment

Modify Ticket

Change Properties
<Author field>
Action
as closed
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.