clang-1/lib/AST
Douglas Gregor cb78d8852a Cope with an amusingly little anomaly with dependent types and
incomplete array initialization, where we have the following in a
template:

  int a[] = { 1, 2, something-value-dependent };
  // ...
  sizeof(a);

The type of "a" appears to be a non-dependent IncompleteArrayType, but
treating it as such makes the sizeof(a) fail at template definition
time. We now correctly handle this by morphing the IncompleteArrayType
into a DependentSizedArrayType with a NULL expression, indicating that
its size has no corresponding expression (and, therefore, the type is
distinct from others).



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@89366 91177308-0d34-0410-b5e6-96231b3b80d8
2009-11-19 18:03:26 +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 Cope with an amusingly little anomaly with dependent types and 2009-11-19 18:03:26 +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 First part of changes to eliminate problems with cv-qualifiers and 2009-11-16 21:35:15 +00:00
Decl.cpp Instead of hanging a using declaration's target decls directly off the using 2009-11-17 05:59:44 +00:00
DeclBase.cpp Incremental progress on using declarations. Split UnresolvedUsingDecl into 2009-11-18 02:36:19 +00:00
DeclCXX.cpp Incremental progress on using declarations. Split UnresolvedUsingDecl into 2009-11-18 02:36:19 +00:00
DeclGroup.cpp Remove the serialization code that predates precompiled 2009-04-22 21:45:53 +00:00
DeclObjC.cpp Add ObjCClassDecl::getSourceRange(). 2009-11-18 01:26:56 +00:00
DeclPrinter.cpp Incremental progress on using declarations. Split UnresolvedUsingDecl into 2009-11-18 02:36:19 +00:00
DeclTemplate.cpp Introduce a new representation for template template 2009-11-11 01:00:40 +00:00
DeclarationName.cpp Fix a missing include from r88876. 2009-11-15 23:10:57 +00:00
Expr.cpp Fix PR5531. 2009-11-17 17:11:23 +00:00
ExprCXX.cpp Improve source-location information for implicitly-generated member call expressions 2009-11-12 15:31:47 +00:00
ExprConstant.cpp Add constant evaluation for comma operator with floating-point operand. Fixes 2009-11-16 04:25:37 +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 Fixup spacing. 2009-11-11 02:49:00 +00:00
RecordLayoutBuilder.h Refine layout for indirect virtual base classes. 2009-11-05 04:02:15 +00:00
Stmt.cpp Move clients to use IdentifierInfo::getNameStart() instead of getName() 2009-10-18 20:26:12 +00:00
StmtDumper.cpp When dumping implicit cast exprs, print out whether the cast is an lvalue cast or not. 2009-11-14 22:35:18 +00:00
StmtIterator.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
StmtPrinter.cpp Eliminate QualifiedDeclRefExpr, which captured the notion of a 2009-10-23 18:54:35 +00:00
StmtProfile.cpp Introduce a new representation for template template 2009-11-11 01:00:40 +00:00
StmtViz.cpp Remove tabs, and whitespace cleanups. 2009-09-09 15:08:12 +00:00
TemplateBase.cpp Fix speculative parsing of dependent template names in 2009-11-11 16:39:34 +00:00
TemplateName.cpp Implement support for parsing dependent template-ids that refer to 2009-11-04 00:56:37 +00:00
Type.cpp When querying type qualifiers on QualType via one of the "non-local" 2009-11-17 00:55:50 +00:00
TypeLoc.cpp Suppress build warning. 2009-10-19 01:20:42 +00:00
TypePrinter.cpp First part of changes to eliminate problems with cv-qualifiers and 2009-11-16 21:35:15 +00:00