[Libreoffice] gcc 4.6.2 + boost 1.48.0 and unordered_map assignment operator const issues [was gcc 4.6.2]

Caolán McNamara caolanm at redhat.com
Wed Dec 21 03:38:09 PST 2011


On Tue, 2011-12-20 at 09:30 +0000, Caolán McNamara wrote:
> On Tue, 2011-12-20 at 10:13 +0100, Petr Mladek wrote:
> > Hi Rafael,
> > 
> > fixes for 3.4.5-rc2 need triple review, so I forward this mail to the
> > mailing list.
> 
> We've seen this problem recently with our rawhide gcc as well and 3.4.X,
> though 3.5.X doesn't seem to have the problem

after some digging the difference between 3.4 and 3.5 that makes 3.5
build is that the gbuild modules are additionally built with -std=c++0x
on 3.5 (only the dmake ones are built with that on 3.4).

Seems that a recent boost + recent gcc causes this problem when an
boost::unordered_map is used as a baseclass for something, but asking
gcc to use -std=c++0x mode makes gcc do the right thing.

Whether its a bug in gcc or boost I'm unsure really. But it wouldn't
happen with an older boost like the builtin one, and I think using the
attached patch would allow people to build 3.4 with bleeding edge
external boost and gcc without hacking loads of copy-constructors
manually.

C.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: backport.using.c++0x.patch
Type: text/x-patch
Size: 642 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/libreoffice/attachments/20111221/a096c7f0/attachment.bin>


More information about the LibreOffice mailing list