Skip to content
  1. Nov 30, 2011
    • Ted Kremenek's avatar
      Don't run -Wunreachable-code on template instantiations. Different... · 7f770032
      Ted Kremenek authored
      Don't run -Wunreachable-code on template instantiations.  Different instantiations may produce different unreachable code results, and it is very difficult for us to prove that ALL instantiations of a template have specific unreachable code.  If we come up with a better solution, then we can revisit this, but this approach will at least greatly reduce the noise of this warning for code that makes use of templates.
      
      llvm-svn: 145520
      7f770032
  2. Oct 24, 2011
  3. Oct 23, 2011
  4. Oct 21, 2011
  5. Oct 19, 2011
  6. Oct 13, 2011
  7. Oct 10, 2011
  8. Sep 26, 2011
  9. Sep 15, 2011
  10. Sep 14, 2011
  11. Sep 13, 2011
  12. Sep 10, 2011
  13. Sep 09, 2011
  14. Sep 08, 2011
  15. Aug 31, 2011
    • Chandler Carruth's avatar
      Improve the diagnostic text for -Wmissing-noreturn to include the name · c841b6e5
      Chandler Carruth authored
      of the function in question when applicable (that is, not for blocks).
      Patch by Joerg Sonnenberger with some stylistic tweaks by me.
      
      When discussing this weth Joerg, streaming the decl directly into the
      diagnostic didn't work because we have a pointer-to-const, and the
      overload doesn't accept such. In order to make my style tweaks to the
      patch, I first changed the overload to accept a pointer-to-const, and
      then changed the diagnostic printing layer to also use
      a pointer-to-const, cleaning up a gross line of code along the way.
      
      llvm-svn: 138854
      c841b6e5
  16. Aug 30, 2011
  17. Aug 29, 2011
  18. Aug 27, 2011
  19. Aug 24, 2011
  20. Aug 23, 2011
    • Caitlin Sadowski's avatar
      Thread-safety analysis: adding in a basic lockset tracking system. This · afbbd8e5
      Caitlin Sadowski authored
      system flags an error when unlocking a lock which was not held, locking
      the same lock twice, having a different lockset on each iteration of a
      loop, or going out of scope while still holding a lock. In order to
      successfully use the lockset, this patch also makes sure that attribute
      arguments are attached correctly for later parsing.
      
      This patch was also worked on by DeLesley Hutchins.
      
      Note: This patch has been reviewed by Chandler Carruth and Jeffrey
      Yasskin. Feel free to provide post-commit review comments for a
      subsequent patch.
      
      llvm-svn: 138350
      afbbd8e5
  21. Jul 23, 2011
  22. Jul 22, 2011
    • Chandler Carruth's avatar
      Move duplicate uninitialized warning suppression into the · 4dd6c043
      Chandler Carruth authored
      AnalysisBasedWarnings Sema layer and out of the Analysis library itself.
      This returns the uninitialized values analysis to a more pure form,
      allowing its original logic to correctly detect some categories of
      definitely uninitialized values. Fixes PR10358 (again).
      
      Thanks to Ted for reviewing and updating this patch after his rewrite of
      several portions of this analysis.
      
      llvm-svn: 135748
      4dd6c043
  23. Jul 21, 2011
  24. Jul 19, 2011
    • Ted Kremenek's avatar
      Reduce -Wuninitialized time by 22% (on sqlite) by removing the recursive AST crawl. · 9e100ea1
      Ted Kremenek authored
      This is accomplished by forcing the needed expressions for -Wuninitialized to always be CFGElements in the CFG.
      This allows us to remove a fair amount of the code for -Wuninitialized.
      
      Some fallout:
      - AnalysisBasedWarnings.cpp now specifically toggles the CFGBuilder to create a CFG that is suitable for -Wuninitialized.  This
      is a layering violation, since the logic for -Wuninitialized is in libAnalysis.  This can be fixed with the proper refactoring.
      - Some of the source locations for -Wunreachable-code warnings have shifted.  While not ideal, this is okay because that analysis
      already needs some serious reworking.
      
      llvm-svn: 135480
      9e100ea1
  25. Jul 16, 2011
  26. Jul 08, 2011
  27. Jul 07, 2011
    • Chandler Carruth's avatar
      Based on comments from Chris, switch to using CFG::getNumBlockIDs() · 50020d94
      Chandler Carruth authored
      rather than a computed std::distance(). At some point I had convinced
      myself that these two were different; but as far as I can tell on
      re-exampination they aren't, and the number of block IDs is actually
      just a count of the blocks in the CFG.
      
      While this removes the primary motivation for guarding all of this with
      CollectStats, I have a patch coming up that will almost certainly make
      it important again.
      
      llvm-svn: 134552
      50020d94
Loading