Opened 14 years ago

Closed 14 years ago

#2690 closed Bugs (invalid)

array.hpp line 289 missing parameter

Reported by: anonymous Owned by:
Milestone: Boost 1.38.0 Component: None
Version: Boost 1.37.0 Severity: Problem
Keywords: Cc:

Description

I down loaded and installed boost 1.37.0 yesterday on our system with SPARC processor, running Solaris 10. When building I kept getting the following errors: "./boost/array.hpp", line 75: Error: Too few arguments for template std::reverse_iterator<boost::T* "./boost/array.hpp", line 289: Where: While specializing "boost::array<boost::T, boost::N>" "./boost/array.hpp", line 289: Where: Specialized in non-template code.

When looking at line 289, it reads:

return std::equal(x.begin(), x.end(), y.begin());

I think it should read:

return std::equal(x.begin(), x.end(), y.begin(), y.end());

Change History (5)

in reply to:  description comment:1 by monte.jones.ctr@…, 14 years ago

Replying to anonymous: Questions can be sent to the above email or I can be reached at 719-556-9903.

I down loaded and installed boost 1.37.0 yesterday on our system with SPARC processor, running Solaris 10. When building I kept getting the following errors: "./boost/array.hpp", line 75: Error: Too few arguments for template std::reverse_iterator<boost::T* "./boost/array.hpp", line 289: Where: While specializing "boost::array<boost::T, boost::N>" "./boost/array.hpp", line 289: Where: Specialized in non-template code.

When looking at line 289, it reads:

return std::equal(x.begin(), x.end(), y.begin());

I think it should read:

return std::equal(x.begin(), x.end(), y.begin(), y.end());

comment:2 by Steven Watanabe, 14 years ago

Resolution: invalid
Status: newclosed

std::equal takes three arguments, so the boost::array code is correct.

The actual problem is that that std::reverse_iterator which is used to define boost::array<>::reverse_iterator does not conform to the standard.

In order to use Boost with sun, you must use stlport (-library=stlport4).

comment:3 by anonymous, 14 years ago

Resolution: invalid
Status: closedreopened

May be I should have been more specific, this problem occurs when building the boost libraries. It keeps over 200 libraries from building, and some of them are ones I need. The solution provided when marked invalid is a compile time solution for Sun Studio 12, not an initial boost build solution.

comment:4 by Steven Watanabe, 14 years ago

To build boost you need to add stdlib=sun-stlport to the bjam command line.

comment:5 by anonymous, 14 years ago

Resolution: invalid
Status: reopenedclosed

Thank you Steve. I now have Boost 1.37.0 built and working on our sun system. I would suggest adding this information to the documentation provided on line.

Note: See TracTickets for help on using tickets.