Re: [Boost-bugs] [Boost C++ Libraries] #4912: boost filesystem v3 does not compile on AIX/v11.1

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #4912: boost filesystem v3 does not compile on AIX/v11.1
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-12-01 14:00:48


#4912: boost filesystem v3 does not compile on AIX/v11.1
--------------------------------------------------------+-------------------
  Reporter: Avi Singh Bahra <avibahra@…> | Owner: bemandawes
      Type: Bugs | Status: new
 Milestone: To Be Determined | Component: filesystem
   Version: Boost 1.45.0 | Severity: Showstopper
Resolution: | Keywords:
--------------------------------------------------------+-------------------

Comment (by Avi Singh Bahra <avibahra@…>):

 Replying to [comment:2 avibahra@…]:
> Yes the problem was with boost version 1.45.
> Version 1.43 compiles and all prevous versions are ok.
> My workaround at the moment was to comment on v3 filesystem src
> in the jamfile, until a solution is found.
> Is there any more information I can supply or try ?
>
> Best regards
> Avi


 TO *FIX* the file system v3 for AIX./v11.1

 Change file path.hpp:
 FROM:
 //------------------------------------------------------------------------------------//
   // class path::iterator
 //
 //------------------------------------------------------------------------------------//

   class path::iterator
     : public boost::iterator_facade<
       iterator,
       path const,
       boost::bidirectional_traversal_tag >
   {
     ....
 TO:
 //------------------------------------------------------------------------------------//
   // class path::iterator
 //
 //------------------------------------------------------------------------------------//

   class path::iterator
     : public boost::iterator_facade<
       path::iterator,
       path const,
       boost::bidirectional_traversal_tag >
   {
     ....

 ie. since iterator_facade uses CRTP, the iterator is being interperted as
 "boost::iterator"
     passing "path::iterator" as the template argument fixes the compile
 error on AIX.
     This should be safe for other platforms as well

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/4912#comment:4>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:04 UTC