> On Sep 21, 2016, at 1:55 PM, Zachary Turner <ztur...@google.com> wrote:
> :-/ The same thing happens if you write Foo &f = *nullptr; It's a
I might be a good idea to add an overloaded constructor for nullptr and void *
and delete them so that we can't implicitly create a StringRef from nullptr or
NULL and cause as crash as it wouldn't compile in the first place.
> Did you try StringRef::withNullAsEmpty()?
I am still catching code conversion issues with things like:
if (name == nullptr)
For normal string ref construction we can cut over to using withNullAsEmpty.
> BTW what code are you converting? I'm working on some of the options code as
> we speak.
Its the cut over to using the DWARF parser in LLVM. There are many functions
that were missing and I have added them and other things we had in our DWARF
parser. Any DWARF attribute that is a "const char *" will now be returned as a
llvm::StringRef. That has wide implications in all of the existing DWARF
parsing code that was using "const char *" for things like names and mangled
names and also the ClangASTContext functions, like say to create a RecordDecl,
it now takes an llvm::StringRef as an argument.
lldb-dev mailing list