From: Michael Stevens (mail_at_[hidden])
Date: 2005-11-30 16:22:47
On Tuesday, 29. November 2005 22:53, Shawn D. Pautz wrote:
> There is a difference between 1.33.0 and 1.33.1 Beta that is causing me
> some problems with gcc 3.4.4. In class vector the typedef for pointer
> and const_pointer has changed from being public to being private. Was
> this intended?
The private pointer/const_pointer change is prior to 1.33.0. About a year ago
> I'll note that the documentation for the Vector concept
> still indicates that it is a refinement of RandomAccessContainer, which
> requires a public typedef.
Bad. An oversight. The Concepts tests only check for the to common
requirements of all classes which model a Vector. The specific Random Access
Container requirement of ublas:vector is not specifically checked.
I have commited a FIX to the 1_33 branch. The HEAD already has the correct
public versions.. Can you test?
> I thought there had been discussion of
> dropping that requirement - am I looking at the right documentation?
I looked up my previous post on the subject.
Importantly I have removed Random Access Container from the list of Concepts
refined by Vector. The problem is that Random Access Container requires the
iterator to be a Random Access Iterator. Not all Vector's can provide this.
Instead I have made ublas::vector a model of Random Access Container. This
makes sense as the aim of introducing a relationship with Random Access
Container was avoid surprises by people using ublas::vector as a std::vector.
Hope that all make sense.
-- ___________________________________ Michael Stevens Systems Engineering 34128 Kassel, Germany Phone/Fax: +49 561 5218038 Navigation Systems, Estimation and Bayesian Filtering http://bayesclasses.sf.net ___________________________________