hanchenye-llvm-project/clang/lib/AST
Douglas Gregor af2a6ae429 Selector::getIdentifierInfoForSlot() can return NULL values, a fact
that was ignored in a few places (most notably, code
completion). Introduce Selector::getNameForSlot() for the common case
where we only care about the name. Audit all uses of
getIdentifierInfoForSlot(), switching many over to getNameForSlot(),
fixing a few crashers.

Fixed <rdar://problem/8939352>, a code-completion crasher.

llvm-svn: 125977
2011-02-18 22:29:55 +00:00
..
APValue.cpp
ASTConsumer.cpp
ASTContext.cpp Convert RecordLayout::Alignment to CharUnits from bit units. No change in 2011-02-15 02:32:40 +00:00
ASTDiagnostic.cpp Add some tests for reference-collapsing and referencing binding 2011-01-20 16:08:06 +00:00
ASTImporter.cpp Import three interesting bits that apply only to C++ methods. 2011-01-27 02:37:01 +00:00
AttrImpl.cpp
CMakeLists.txt Add CMake dependencies so that LLVM_USED_LIBS order doesn't matter. 2011-02-11 23:46:38 +00:00
CXXABI.h
CXXInheritance.cpp Fix some corner cases in the __is_base_of logic. 2011-01-28 22:02:36 +00:00
Decl.cpp Devirtualize TagDecl::completeDefinition(). 2011-02-17 18:06:05 +00:00
DeclBase.cpp Remove the last virtual member function from the Decl hierarchy, 2011-02-17 18:14:32 +00:00
DeclCXX.cpp Devirtualize TagDecl::completeDefinition(). 2011-02-17 18:06:05 +00:00
DeclFriend.cpp
DeclGroup.cpp
DeclObjC.cpp
DeclPrinter.cpp Step #2/N of __label__ support: keep pushing LabelDecl forward, 2011-02-17 20:34:02 +00:00
DeclTemplate.cpp Devirtualize DeclaratorDecl::getInnerLocStart() and TagDecl::getInnerLocStart(). 2011-02-17 17:39:40 +00:00
DeclarationName.cpp Selector::getIdentifierInfoForSlot() can return NULL values, a fact 2011-02-18 22:29:55 +00:00
DumpXML.cpp Change QualType::getTypePtr() to return a const pointer, then change a 2011-01-19 06:33:43 +00:00
Expr.cpp Change the representation of GNU ?: expressions to use a different expression 2011-02-17 10:25:35 +00:00
ExprCXX.cpp Remove vtables from the Stmt hierarchy; this was pretty easy as 2011-02-09 08:16:59 +00:00
ExprClassification.cpp Change the representation of GNU ?: expressions to use a different expression 2011-02-17 10:25:35 +00:00
ExprConstant.cpp Change the representation of GNU ?: expressions to use a different expression 2011-02-17 10:25:35 +00:00
InheritViz.cpp AST/InheritViz: Remove all internal uses of PathV1. 2011-01-15 21:43:57 +00:00
ItaniumCXXABI.cpp Convert RecordLayout::NonVirtualSize from bit units to CharUnits. 2011-02-01 01:52:10 +00:00
ItaniumMangle.cpp Change the representation of GNU ?: expressions to use a different expression 2011-02-17 10:25:35 +00:00
Makefile
Mangle.cpp For consistency, use llvm::raw_ostream in the rest of the mangle api. 2011-02-11 02:52:17 +00:00
MicrosoftCXXABI.cpp Convert RecordLayout::NonVirtualSize from bit units to CharUnits. 2011-02-01 01:52:10 +00:00
MicrosoftMangle.cpp For consistency, use llvm::raw_ostream in the rest of the mangle api. 2011-02-11 02:52:17 +00:00
NestedNameSpecifier.cpp Change QualType::getTypePtr() to return a const pointer, then change a 2011-01-19 06:33:43 +00:00
ParentMap.cpp Give some convenient idiomatic accessors to Stmt::child_range and 2011-02-13 04:07:26 +00:00
RecordLayout.cpp Convert RecordLayout::Alignment to CharUnits from bit units. No change in 2011-02-15 02:32:40 +00:00
RecordLayoutBuilder.cpp Convert MaxFieldAlignment to CharUnits from bits. No change in functionality 2011-02-17 01:49:42 +00:00
Stmt.cpp Step #1/N of implementing support for __label__: split labels into 2011-02-17 07:39:24 +00:00
StmtDumper.cpp implement basic support for __label__. I wouldn't be shocked if there are 2011-02-18 02:08:43 +00:00
StmtIterator.cpp Change QualType::getTypePtr() to return a const pointer, then change a 2011-01-19 06:33:43 +00:00
StmtPrinter.cpp Selector::getIdentifierInfoForSlot() can return NULL values, a fact 2011-02-18 22:29:55 +00:00
StmtProfile.cpp Change the representation of GNU ?: expressions to use a different expression 2011-02-17 10:25:35 +00:00
StmtViz.cpp
TemplateBase.cpp Teach template template argument pack expansions to keep track of the 2011-01-14 23:41:42 +00:00
TemplateName.cpp Introduce a new kind of TemplateName that captures a substituted 2011-01-15 06:45:20 +00:00
Type.cpp Look through array types when deciding whether a field requires non-trivial 2011-02-13 00:46:43 +00:00
TypeLoc.cpp Teach TemplateSpecializationTypeLoc::initializeArgLocs() to actually 2011-01-25 19:13:18 +00:00
TypePrinter.cpp When printing a qualified type, look through a substituted template 2011-02-17 06:52:25 +00:00