Subject: Re: [Boost-bugs] [Boost C++ Libraries] #1315: iterator_adaptor does not work with incomplete Value types
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2010-10-13 22:43:23
#1315: iterator_adaptor does not work with incomplete Value types
--------------------------------------+-------------------------------------
Reporter: joaquin | Owner: witt
Type: Feature Requests | Status: new
Milestone: To Be Determined | Component: iterator
Version: Boost Development Trunk | Severity: Problem
Resolution: | Keywords:
--------------------------------------+-------------------------------------
Changes (by Duncan Exon Smith <duncanphilipnorman@â¦>):
* cc: duncanphilipnorman@⦠(added)
Comment:
Replying to [comment:6 Laurent Rineau <Laurent.Rineau__boost@â¦>]:
> Replying to [comment:3 dave]:
> > I think your analysis is correct, but my question to you is: why
should this be considered a bug?
>
> It is more a ''feature request'' than a bug. In a software of ours,
[http://www.cgal.org/ CGAL], we would like to use the features of
`iterator_facade`, in a scenario alike the one I posted in [comment:1
comment 1]. It currently works with GNU/g++ (versions 4.1.2 and 4.3.0 at
least), even if I do not know why, but not with MSVC++Â 8.
This feature worked in GCC only because of a bug prior to v4.4 (e.g., you
could use abstract types in v4.3.4). However, this bug -- to do with the
intrinsics `__is_abstract` and `__is_pod` -- was fixed:
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39475
GCC v4.4.3 now gives the same as MSVC. In particular, `iterator_facade<>`
cannot be used to wrap pointers to abstract types any longer. With a
large codebase that accidentally relied on this misbehaviour, we cannot
upgrade past GCC v4.3 without this feature.
Does anyone know if
[http://lists.boost.org/Archives/boost/2007/10/128738.php the workaround
above] causes any problems?
-- Ticket URL: <https://svn.boost.org/trac/boost/ticket/1315#comment:7> 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