Re: [boost] [boost::spirit::basic_hold_any] needs non template operator=

20 Aug
2013
20 Aug
'13
12:38 p.m.
I found that hold_any template operator= is not used during assignment to another hold_any (as intended by its developer). Instead compiler uses self generated version of operator= which doesn't forward to assign(const basic_hold_any&). This leads to memory corruption. The fix is simple - you need to add explicit operator=(const basic_hold_any&). My compiler is gcc 4.4.7 and I use option -std=c++0x Version of boost is 1.53 but I don't see that something changed in 1.54 so it should have the same issue.
Please provide a patch which I will gladly apply. Regards Hartmut --------------- http://boost-spirit.com http://stellar.cct.lsu.edu
4265
Age (days ago)
4265
Last active (days ago)
0 comments
1 participants
participants (1)
-
Hartmut Kaiser