--- llvm-3.0.src/tools/clang/include/clang/Basic/Diagnostic.h.orig 2011-12-14 12:53:57.000000000 -0800 +++ llvm-3.0.src/tools/clang/include/clang/Basic/Diagnostic.h 2011-12-14 15:01:37.000000000 -0800 @@ -583,12 +583,14 @@ /// This is set to ~0U when there is no diagnostic in flight. unsigned CurDiagID; +public: enum { /// MaxArguments - The maximum number of arguments we can hold. We currently /// only support up to 10 arguments (%0-%9). A single diagnostic with more /// than that almost certainly has to be simplified anyway. MaxArguments = 10 }; +private: /// NumDiagArgs - This contains the number of entries in Arguments. signed char NumDiagArgs; @@ -618,7 +620,9 @@ /// only support 10 ranges, could easily be extended if needed. CharSourceRange DiagRanges[10]; +public: enum { MaxFixItHints = 6 }; +private: /// FixItHints - If valid, provides a hint with some code /// to insert, remove, or modify at a particular position. --- llvm-3.0.src/tools/clang/include/clang/Parse/Parser.h.orig 2011-12-14 17:29:30.000000000 -0800 +++ llvm-3.0.src/tools/clang/include/clang/Parse/Parser.h 2011-12-14 17:30:17.000000000 -0800 @@ -409,11 +409,14 @@ return PP.LookAhead(0); } + class BalancedDelimiterTracker; + /// \brief Tracks information about the current nesting depth of /// opening delimiters of each kind. class DelimiterTracker { private: friend class Parser; + friend class BalancedDelimiterTracker; unsigned Paren, Brace, Square, Less, LLLess; unsigned& get(tok::TokenKind t) { diff --git clang-svn-orig/tools/clang/lib/Serialization/ASTReader.cpp clang-svn/tools/clang/lib/Serialization/ASTReader.cpp index 440474b..352678f 100644 --- clang-svn-orig/tools/clang/lib/Serialization/ASTReader.cpp +++ clang-svn/tools/clang/lib/Serialization/ASTReader.cpp @@ -747,7 +747,7 @@ ASTDeclContextNameLookupTrait::ReadData(internal_key_type, unsigned DataLen) { using namespace clang::io; unsigned NumDecls = ReadUnalignedLE16(d); - DeclID *Start = (DeclID *)d; + LE32DeclID *Start = (LE32DeclID *)d; return std::make_pair(Start, Start + NumDecls); } diff --git clang-svn-orig/tools/clang/lib/Serialization/ASTReaderInternals.h clang-svn/tools/clang/lib/Serialization/ASTReaderInternals.h index fb6c830..635f95f 100644 --- clang-svn-orig/tools/clang/lib/Serialization/ASTReaderInternals.h +++ clang-svn/tools/clang/lib/Serialization/ASTReaderInternals.h @@ -15,6 +15,7 @@ #include "clang/Basic/OnDiskHashTable.h" #include "clang/AST/DeclarationName.h" +#include "llvm/Support/Endian.h" #include #include @@ -41,7 +42,8 @@ public: /// /// Note that these declaration IDs are local to the module that contains this /// particular lookup t - typedef std::pair data_type; + typedef llvm::support::ulittle32_t LE32DeclID; + typedef std::pair data_type; /// \brief Special internal key for declaration names. /// The hash table creates keys for comparison; we do not create