diff options
author | Justin Bogner <mail@justinbogner.com> | 2014-09-11 19:44:04 +0000 |
---|---|---|
committer | Justin Bogner <mail@justinbogner.com> | 2014-09-11 19:44:04 +0000 |
commit | 88f098678273c98b8444521eece42aff79732ee5 (patch) | |
tree | 03569de733f67b3d5b2073bbd52a02d62dfcbdaa /llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp | |
parent | 6f1048f94e8c3cd62a163d3780627483f22bfa5d (diff) | |
download | bcm5719-llvm-88f098678273c98b8444521eece42aff79732ee5.tar.gz bcm5719-llvm-88f098678273c98b8444521eece42aff79732ee5.zip |
Thread Safety Analysis: Avoid infinite recursion in an operator<<
r217556 introduced an operator<<(std::ostream &, StringRef) that seems
to self recurse on some systems, because str.data(), which is a char *,
was being implicitly converted back to StringRef in overload
resolution.
This manifested as SemaCXX/warn-thread-safety-analysis.cpp timing out
in release builds and overflowing the stack in debug builds. One of
the failing systems that saw this is here:
http://lab.llvm.org:8013/builders/clang-x86_64-darwin11-nobootstrap-RAincremental/builds/4636
Using ostream's write method instead of operator<< should get the bots
going again.
llvm-svn: 217621
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp')
0 files changed, 0 insertions, 0 deletions