Skip to content
  1. Oct 17, 2007
    • Hartmut Kaiser's avatar
      Updated VC++ build system. · 7078da8e
      Hartmut Kaiser authored
      Silenced some VC++ warnings.
      Had to rephrase a partial specialization of the IntrospectionTrait struct in SerializationTest.cpp, please review.
      Added a compiler specific workaround in IdentifierTable.h. Is that the way to fix this kind of issues?
      
      llvm-svn: 43074
      7078da8e
  2. Oct 15, 2007
    • Steve Naroff's avatar
      · 32e44c00
      Steve Naroff authored
      Move type compatibility predicates from Type to ASTContext. In addition, the predicates are now instance methods (they were previously static class methods on Type).
      
      This allowed me to fix the following hack from this weekend...
      
      // FIXME: Devise a way to do this without using strcmp.
      // Would like to say..."return getAsStructureType() == IdStructType;", but
      // we don't have a pointer to ASTContext.
      bool Type::isObjcIdType() const {
        if (const RecordType *RT = getAsStructureType())
          return !strcmp(RT->getDecl()->getName(), "objc_object");
        return false;
      }
      
      ...which is now...
      
      bool isObjcIdType(QualType T) const {
        return T->getAsStructureType() == IdStructType;
      }
      
      Side notes:
      
      - I had to remove a convenience function from the TypesCompatibleExpr class.
      
      int typesAreCompatible() const {return Type::typesAreCompatible(Type1,Type2);}
      
      Which required a couple clients get a little more verbose...
      
      -    Result = TCE->typesAreCompatible();
      +    Result = Ctx.typesAreCompatible(TCE->getArgType1(), TCE->getArgType2());
      
      Overall, I think this change also makes sense for a couple reasons...
      
      1) Since ASTContext vends types, it makes sense for the type compatibility API to be there.
      2) This allows the type compatibility predeciates to refer to data not strictly present in the AST (which I have found problematic on several occasions).
      
      llvm-svn: 43009
      32e44c00
    • Anders Carlsson's avatar
      Add code generation and sema checking for __builtin_va_arg. · 7e13ab88
      Anders Carlsson authored
      llvm-svn: 43006
      7e13ab88
  3. Oct 13, 2007
  4. Oct 09, 2007
  5. Sep 22, 2007
  6. Sep 13, 2007
  7. Sep 07, 2007
    • Hartmut Kaiser's avatar
      Fixed compilation on Windows. · ec7531c9
      Hartmut Kaiser authored
      Silenced a couple of warnings.
      Added *.vcproj file for new clangAnalysis library.
      Renamed Basic to clangBasic projects.
      
      llvm-svn: 41767
      ec7531c9
  8. Sep 04, 2007
  9. Sep 01, 2007
  10. Aug 27, 2007
  11. Aug 26, 2007
  12. Aug 25, 2007
  13. Aug 24, 2007
Loading