Skip to content
  1. Jun 18, 2010
  2. Jun 17, 2010
    • Fariborz Jahanian's avatar
      Do not treat @selector as lvalue (unlike g++). · 6fdb139c
      Fariborz Jahanian authored
      Patch by Nico Weber (pr7390).
      
      llvm-svn: 106242
      6fdb139c
    • Zhanyong Wan's avatar
      Improves RecursiveASTVisitor: · cae2ea48
      Zhanyong Wan authored
      * refactors code in DEF_TRAVERSE_DECL() into
        TraverseDeclContextHelper() to reduce code bloat and facilitate
        reuse.
      * makes the order of traversing a FunctionDecl (including its
        subclasses)'s children more natural: before the function parameters
        are visited after the function body; now they are visited after the
        function type and before the function body.
      * fixes a double count for function return type and arguments.
      
      Reviewed by chandlerc and csilvers.
      
      llvm-svn: 106236
      cae2ea48
    • Fariborz Jahanian's avatar
      Objective-c++ IRGen. Support for @selector expression as · 9240f3da
      Fariborz Jahanian authored
      an lvalue. Fixes PR7390.
      
      llvm-svn: 106235
      9240f3da
    • Dan Gohman's avatar
      Minor clarification. · 4eb47194
      Dan Gohman authored
      llvm-svn: 106234
      4eb47194
    • Tom Care's avatar
      Bug 7377: Fixed several bad printf format string bugs. · b49ec690
      Tom Care authored
      - Added warning for undefined behavior when using field specifier
      - Added warning for undefined behavior when using length modifier
      - Fixed warnings for invalid flags
      - Added warning for ignored flags
      - Added fixits for the above warnings
      - Fixed accuracy of detecting several undefined behavior conditions
      - Receive normal warnings in addition to security warnings when using %n
      - Fix bug where '+' flag would remain on unsigned conversion suggestions
      
      Summary of changes:
      - Added expanded tests
      - Added/expanded warnings
      - Added position info to OptionalAmounts for fixits
      - Extracted optional flags to a wrapper class with position info for fixits
      - Added several methods to validate a FormatSpecifier by component, each checking for undefined behavior
      - Fixed conversion specifier checking to conform to C99 standard
      - Added hooks to detect the invalid states in CheckPrintfHandler::HandleFormatSpecifier
      
      Note: warnings involving the ' ' (space) flag are temporarily disabled until whitespace highlighting no longer triggers assertions. I will make a post about this on cfe-dev shortly.
      
      M    test/Sema/format-strings.c
      M    include/clang/Basic/DiagnosticSemaKinds.td
      M    include/clang/Analysis/Analyses/PrintfFormatString.h
      M    lib/Analysis/PrintfFormatString.cpp
      M    lib/Sema/SemaChecking.cpp
      
      llvm-svn: 106233
      b49ec690
    • Jim Grosbach's avatar
      add missing break. inconsequential as the code shouldn't be reached, but · 0ed5b460
      Jim Grosbach authored
      for correctness' sake, it should be there.
      
      llvm-svn: 106229
      0ed5b460
    • Jim Grosbach's avatar
      Add entries for Expanding atomic intrinsics to libcalls. Just a placeholder · 3aeae8ae
      Jim Grosbach authored
      for the moment. The implementation of the libcall will follow.
      
      Currently, the llvm-gcc knows when the intrinsics can be correctly handled by
      the back end and only generates them in those cases, issuing libcalls directly
      otherwise. That's too much coupling. The intrinsics should always be
      generated and the back end decide how to handle them, be it with a libcall,
      inline code, or whatever. This patch is a step in that direction.
      
      rdar://8097623
      
      llvm-svn: 106227
      3aeae8ae
    • Dale Johannesen's avatar
      Testcase for llvm-gcc 106225. · 1f8e5fbc
      Dale Johannesen authored
      llvm-svn: 106226
      1f8e5fbc
    • Douglas Gregor's avatar
      When pushing a copy of the TypeLoc information for a dependent · ffa20398
      Douglas Gregor authored
      template specialization type, copy the location information but use
      the new type. Fixes PR7385.
      
      llvm-svn: 106224
      ffa20398
    • Douglas Gregor's avatar
      Use UnaryOperator as the representation of dependent expressions when · 630dec57
      Douglas Gregor authored
      no overloaded operators were found in scope, mirroring what we already
      do for BinaryOperator.
      
      llvm-svn: 106222
      630dec57
Loading