On 20.09.2016 16:06, Emilio Pozuelo Monfort wrote: > On 19/09/16 22:00, Eugene V. Lyubimkin wrote: >> On 18.09.2016 22:40, Eugene V. Lyubimkin wrote: >>> Thank you. Turned out it is reproducible in release build (at the least on >>> armel porterbox), but not in debug build. >>> >>> I'll look into it. >> >> Ok, something fishy is going on with lambda captures. I believe I found an >> issue in either std::function or GCC >> optimizer. Looks like a captured value ("this" in this case) is >> uninitialized or corrupted, but only if previous lambda >> captures a certain amount of variables, no matter was it called or not. Ugh. >> I managed to reduce >> the code to the following small example: > > Cool! Can you file a bug against g++-6 or libstdc++6 (or whatever you think is > appropriate)? Have you found what optimization flag causes this? If it builds > with -O1 or disabling some specific optimization, perhaps you can temporarily > use that to avoid autoremoval from testing.
Sounds good for both points. Indeed, it builds with -O1. I will make a packaging change and file a bug.