Skip to content
  1. Apr 11, 2011
  2. Apr 10, 2011
  3. Apr 09, 2011
  4. Apr 08, 2011
    • Devang Patel's avatar
      Do not use zero as an upper bound for unbounded array because upper bound zero... · 0b37e798
      Devang Patel authored
      Do not use zero as an upper bound for unbounded array because upper bound zero also indicates one element array. 
      
      llvm-svn: 129157
      0b37e798
    • Evan Cheng's avatar
    • Evan Cheng's avatar
      Add -mtrap_function=<> option. rdar://9257465 · 77cdce94
      Evan Cheng authored
      llvm-svn: 129145
      77cdce94
    • John Wiegley's avatar
      Use ExprResult& instead of Expr *& in Sema · 0129629f
      John Wiegley authored
      This patch authored by Eric Niebler.
      
      Many methods on the Sema class (e.g. ConvertPropertyForRValue) take Expr
      pointers as in/out parameters (Expr *&).  This is especially true for the
      routines that apply implicit conversions to nodes in-place.  This design is
      workable only as long as those conversions cannot fail.  If they are allowed
      to fail, they need a way to report their failures.  The typical way of doing
      this in clang is to use an ExprResult, which has an extra bit to signal a
      valid/invalid state.  Returning ExprResult is de riguour elsewhere in the Sema
      interface.  We suggest changing the Expr *& parameters in the Sema interface
      to ExprResult &.  This increases interface consistency and maintainability.
      
      This interface change is important for work supporting MS-style C++
      properties.  For reasons explained here
      <http://lists.cs.uiuc.edu/pipermail/cfe-dev/2011-February/013180.html>,
      seemingly trivial operations like rvalue/lvalue conversions that formerly
      could not fail now can.  (The reason is that given the semantics of the
      feature, getter/setter method lookup cannot happen until the point of use, at
      which point it may be found that the method does not exist, or it may have the
      wrong type, or overload resolution may fail, or it may be inaccessible.)
      
      llvm-svn: 129143
      0129629f
Loading