Skip to content
  • Daniel Dunbar's avatar
    Iterate on sema for :? in Objective-C: · 484603be
    Daniel Dunbar authored
     - Follow C99 behavior of using other operand type when one of
       operands is a null pointer constant.
     - Fix overenthusiastic devolving of any Objective-C types to id:
       o If either operand has an Objective-C object type then:
         - If both operands are interfaces and either operand can be
           assigned to the other, use that type as the composite type.
         - Otherwise, if either type is id, use id as the composite type.
         - Otherwise, warn about incompatible types and use id as the
           composite type.
     - Return handling of qualified idea to separate test following
       general pointer type checking.
       o Upgraded from old code to allow devolving to id (without warning,
         which matches GCC).
     - <rdar://problem/6212771>
    
    Add test case for issues fixed above, XFAIL though because it exposed
    a new issue in property handling.
    
    llvm-svn: 56135
    484603be
Loading