[Lldb-commits] [PATCH] Include cstring in TimeValue.cpp, fix Linux/libstdc++ build
Matt Johnson
johnso87 at crhc.illinois.edu
Thu Aug 11 13:22:24 PDT 2011
Hi all,
strpbrk() is used in TimeValue.cpp, but the header file it lives
in, cstring/string.h, is not #included explicitly. The other headers
included in the file must transitively #include cstring on the
developers' machines, but the build breaks on Linux with recent versions
of libstdc++ and glibc. The attached patch fixes the build on my machine.
As a side note, the C++ convention for including libc headers is to
use the version with 'c' prepended and no '.h', unless that version
happens to be broken in your C++ library. The main difference is that
the 'c' versions put all functions in the std namespace, rather than the
global namespace. This convention is followed in other LLVM projects as
far as I can tell, but LLDB mixes both conventions (for example, grep
for 'cassert' and 'assert.h'). I didn't prepare a patch for this
because I wasn't sure if this was intentional or if the 'c' header
versions caused problems on the developers' machines, but if not,
standardizing on the 'c' versions will reduce global namespace pollution.
Best,
Matt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: cstring.diff
Type: text/x-diff
Size: 389 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20110811/26b11fe4/attachment.diff>
More information about the lldb-commits
mailing list