On Thu, Jan 9, 2014 at 2:29 PM, Aaron Ballman <[email protected]>wrote:
> If we're going to back out the revert, can we put the code into an > #ifdef so that the reserved namespace identifier is protected when > compiling with something that doesn't understand lsan? Then we can > argue over the "right" way with some protection. I'm not opposed to that, if we have a suitable predefine. But we already have *loads* of code in Clang that defines identifiers in the reserved namespace (try grepping for '[A-Za-z]__[A-Za-z]' in include/ to find a bunch of them), and none of our supported C++ implementations (for clang 3.5) have a problem with this, so I don't see that there's a lot of value in doing so. On Thu, Jan 9, 2014 at 5:07 PM, Richard Smith <[email protected]> wrote: > > Please back out this revert. We are far from achieving consensus on this > > revert being appropriate. > > > > > > On Thu, Jan 9, 2014 at 11:43 AM, Alp Toker <[email protected]> wrote: > >> > >> Author: alp > >> Date: Thu Jan 9 13:43:17 2014 > >> New Revision: 198885 > >> > >> URL: http://llvm.org/viewvc/llvm-project?rev=198885&view=rev > >> Log: > >> Revert "Disable LeakSanitizer in TableGen binaries, see PR18325" > >> > >> To declare or define reserved identifers is undefined behaviour in > >> standard > >> C++. This needs to be addressed in compiler-rt before it can be used in > >> LLVM. > >> > >> See the list discussion for details. > >> > >> This reverts commit r198858. > >> > >> Modified: > >> cfe/trunk/utils/TableGen/TableGen.cpp > >> > >> Modified: cfe/trunk/utils/TableGen/TableGen.cpp > >> URL: > >> > http://llvm.org/viewvc/llvm-project/cfe/trunk/utils/TableGen/TableGen.cpp?rev=198885&r1=198884&r2=198885&view=diff > >> > >> > ============================================================================== > >> --- cfe/trunk/utils/TableGen/TableGen.cpp (original) > >> +++ cfe/trunk/utils/TableGen/TableGen.cpp Thu Jan 9 13:43:17 2014 > >> @@ -263,10 +263,3 @@ int main(int argc, char **argv) { > >> > >> return TableGenMain(argv[0], &ClangTableGenMain); > >> } > >> - > >> -extern "C" { > >> -// Disable LeakSanitizer for this binary as it has too many leaks that > >> are not > >> -// very interesting to fix. __lsan_is_turned_off is explained in > >> -// compiler-rt/include/sanitizer/lsan_interface.h > >> -int __lsan_is_turned_off() { return 1; } > >> -} // extern "C" > >> > >> > >> _______________________________________________ > >> cfe-commits mailing list > >> [email protected] > >> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > > > > > > > > _______________________________________________ > > cfe-commits mailing list > > [email protected] > > http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits > > >
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
