llvm-project/clang/lib/AST
John McCall 5677499fbf First pass at implementing C++ enum semantics: calculate (and store) an
"integer promotion" type associated with an enum decl, and use this type to
determine which type to promote to.  This type obeys C++ [conv.prom]p2 and
is therefore generally signed unless the range of the enumerators forces
it to be unsigned.

Kills off a lot of false positives from -Wsign-compare in C++, addressing
rdar://7455616

llvm-svn: 90965
2009-12-09 09:09:27 +00:00
..
APValue.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
ASTConsumer.cpp Push DeclGroup much farther throughout the compiler. Now the various 2009-03-29 16:50:03 +00:00
ASTContext.cpp First pass at implementing C++ enum semantics: calculate (and store) an 2009-12-09 09:09:27 +00:00
CMakeLists.txt Move all of the type-printing logic to its own C++ source file 2009-11-10 00:39:07 +00:00
CXXInheritance.cpp In CXXRecordDecl::forallBases, add the base to the "queue", so we walk more than one heirarchy of classes. John, please review. 2009-12-09 04:26:02 +00:00
Decl.cpp First pass at implementing C++ enum semantics: calculate (and store) an 2009-12-09 09:09:27 +00:00
DeclBase.cpp Fix for PR5710: make sure to put function template specializations into the 2009-12-08 05:40:03 +00:00
DeclCXX.cpp getTemplateSpecializationKind should be const. 2009-12-07 06:33:48 +00:00
DeclGroup.cpp Remove the serialization code that predates precompiled 2009-04-22 21:45:53 +00:00
DeclObjC.cpp DeclaratorInfo -> TypeSourceInfo. Makes an effort to rename associated variables, 2009-12-07 02:54:59 +00:00
DeclPrinter.cpp Implement template instantiation for exception specifications. Also, 2009-12-08 17:45:32 +00:00
DeclTemplate.cpp DeclaratorInfo -> TypeSourceInfo. Makes an effort to rename associated variables, 2009-12-07 02:54:59 +00:00
DeclarationName.cpp Add DeclarationName support for C++0x operator literals. They should now work as 2009-11-29 07:34:05 +00:00
Expr.cpp Added a missing case to a switch statement. 2009-12-08 23:46:15 +00:00
ExprCXX.cpp Introduce the notion of literal types, as specified in C++0x. 2009-12-03 00:13:20 +00:00
ExprConstant.cpp Fix for PR5447: teach Evaluate to deal with floating-point conditionals. 2009-12-04 02:12:53 +00:00
InheritViz.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
Makefile Installation of Clang libraries and headers, from Axel Naumann! 2009-10-08 22:15:31 +00:00
NestedNameSpecifier.cpp Move all of the type-printing logic to its own C++ source file 2009-11-10 00:39:07 +00:00
ParentMap.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
RecordLayoutBuilder.cpp Misc key function fixes. 2009-12-08 03:56:49 +00:00
RecordLayoutBuilder.h Move key functions to a separate map. 2009-12-07 04:35:11 +00:00
Stmt.cpp Add const to accessors that don't modify the object. 2009-11-30 20:10:58 +00:00
StmtDumper.cpp Convert StmtDumper to raw_ostream. I forget why. 2009-12-03 09:13:13 +00:00
StmtIterator.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
StmtPrinter.cpp Rework how we support C++ implicit member accesses. If we can resolve an 2009-12-01 22:10:20 +00:00
StmtProfile.cpp r90313, in which OverloadedFunctionDecl is removed and never spoken of again. 2009-12-02 08:47:38 +00:00
StmtViz.cpp Adapt to the DOTGraphTraits changes in LLVM. 2009-11-30 14:16:05 +00:00
TemplateBase.cpp DeclaratorInfo -> TypeSourceInfo. Makes an effort to rename associated variables, 2009-12-07 02:54:59 +00:00
TemplateName.cpp Push overloaded function templates through the parser using a totally different 2009-12-02 08:04:21 +00:00
Type.cpp Introduce the notion of literal types, as specified in C++0x. 2009-12-03 00:13:20 +00:00
TypeLoc.cpp Fix "using typename" and the instantiation of non-dependent using declarations. 2009-12-04 22:46:56 +00:00
TypePrinter.cpp Implement template instantiation for exception specifications. Also, 2009-12-08 17:45:32 +00:00