Re: r311589 - [ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' poin

2017-08-24 Thread Richard Smith via cfe-commits
Thanks for the revert; looks like there was another bug in the interaction of lambdas an UBSan 'this' sanitization that was exposed by this (the lambda static invoker calls the operator() with a null this pointer, and the sanitizer doesn't know that's actually OK). Should be fixed in r311695. On 2

Re: r311589 - [ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' poin

2017-08-24 Thread Adrian Prantl via cfe-commits
I temporarily reverted the commit in r311680 to get the bots going again. -- adrian > On Aug 24, 2017, at 11:12 AM, Adrian Prantl via cfe-commits > wrote: > > It looks like this broke / found errors on the green dragon bot: > > http://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan_chec

Re: r311589 - [ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' poin

2017-08-24 Thread Adrian Prantl via cfe-commits
It looks like this broke / found errors on the green dragon bot: http://green.lab.llvm.org/green/job/clang-stage2-cmake-RgSan_check/4115/consoleFull#15752874848254eaf0-7326-4999-85b0-388101f2d404 TEST 'LLVM-Unit :: ADT/./ADTTests/FilterIteratorTest.FunctionPointer' FAILED **

Re: r311589 - [ubsan] PR34266: When sanitizing the 'this' value for a member function that happens to be a lambda call operator, use the lambda's 'this' pointer, not the captured enclosing 'this' poin

2017-08-24 Thread Matt Morehouse via cfe-commits
Hi Richard, It looks like this revision is breaking the x86_64-linux-bootstrap bot . Most of the UBSan checks are failing with the attached error. Full log at: http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-b