Skip to content
  1. Oct 01, 2007
  2. Sep 30, 2007
  3. Sep 29, 2007
  4. Sep 28, 2007
  5. Sep 27, 2007
    • Fariborz Jahanian's avatar
      Patch to use case-stmt for keywords used as selectgor names. · fa80e80d
      Fariborz Jahanian authored
      llvm-svn: 42416
      fa80e80d
    • Fariborz Jahanian's avatar
      Patch for method implementation. It populates ObjcImplementationDecl object... · f6546b38
      Fariborz Jahanian authored
      Patch for method implementation. It populates ObjcImplementationDecl object with method implementation declarations .
      It checks and warns on those methods declared in class interface and not implemented.
      
      llvm-svn: 42412
      f6546b38
    • Steve Naroff's avatar
      · 65ca537b
      Steve Naroff authored
      Fix bug in SelectorInfo::getName() - method buffer needs to be passed by reference.
      
      llvm-svn: 42411
      65ca537b
    • Ted Kremenek's avatar
      Created new "ExprDeclBitVector" type bundle for dataflow analyses that need boolean · b9ce295b
      Ted Kremenek authored
      values associated with ScopedDecls and CFGBlock-level Exprs.  This is the common
      boilerplate needed by UninitializedValues and LiveVariables.
      
      Refactored UninitializedValues to use ExprDeclBitVector.
      
      Shortened the string diagnostic for UninitializedValues.
      
      llvm-svn: 42408
      b9ce295b
    • Chris Lattner's avatar
      Fix some use of uninit variables issues, reported by Anton. · cc61bf5e
      Chris Lattner authored
      llvm-svn: 42396
      cc61bf5e
    • Steve Naroff's avatar
      · f73590db
      Steve Naroff authored
      Add SelectorInfo (similar in spirit to IdentifierInfo). The key difference is SelectorInfo is not string-oriented, it is a unique aggregate of IdentifierInfo's (using a folding set).  SelectorInfo also has a richer API that simplifies the parser/action interface. 3 noteworthy benefits:
      
      #1: It is cleaner. I never "liked" storing keyword selectors (i.e. foo:bar:baz) in the IdentifierTable.
      
      #2: It is more space efficient. Since Cocoa keyword selectors can be quite long, this technique is space saving. For Cocoa.h, pulling the keyword selectors out saves ~180k. The cost of the SelectorInfo data is ~100k. Saves ~80k, or 43%.
      
      #3: It results in many API simplifications. Here are some highlights:
      
      - Removed 3 actions (ActOnKeywordMessage, ActOnUnaryMessage, & one flavor of ObjcBuildMethodDeclaration that was specific to unary messages).
      - Removed 3 funky structs from DeclSpec.h (ObjcKeywordMessage, ObjcKeywordDecl, and ObjcKeywordInfo).
      - Removed 2 ivars and 2 constructors from ObjCMessageExpr (fyi, this space savings has not been measured).
      
      I am happy with the way it turned out (though it took a bit more hacking than I expected). Given the central role of selectors in ObjC, making sure this is "right" will pay dividends later.
      
      Thanks to Chris for talking this through with me and suggesting this approach. 
      
      llvm-svn: 42395
      f73590db
    • Chris Lattner's avatar
      objc messages have side effects, return true from hasLocalSideEffect, · e6d9ca54
      Chris Lattner authored
      fixing:
      
      VoidMethod.m:14:5: warning: expression result unused
          [Greeter hello];
          ^~~~~~~~~~~~~~~
      
      llvm-svn: 42380
      e6d9ca54
  6. Sep 26, 2007
Loading