[cfe-commits] r76741 - in /cfe/trunk: include/clang/AST/Type.h include/clang/Basic/DiagnosticSemaKinds.td lib/AST/ASTContext.cpp lib/AST/Type.cpp lib/Sema/SemaExprObjC.cpp lib/Sema/SemaType.cpp test/SemaObjC/call-super-2.m test/SemaObjC/protocol-archane.m test/SemaObjC/protocol-attribute.m test/SemaObjC/protocol-qualified-class-unsupported.m

Fariborz Jahanian fjahanian at apple.com
Wed Jul 22 11:06:12 PDT 2009


Looks good, with a question below;
- Fariborz

On Jul 22, 2009, at 9:07 AM, Steve Naroff wrote:

> Author: snaroff
> Date: Wed Jul 22 11:07:01 2009
> New Revision: 76741
>
> URL: http://llvm.org/viewvc/llvm-project?rev=76741&view=rev
> Log:
> Fix <rdar://problem/6770276> Support Class<Proto> syntax.
>
>
> Modified:
>    cfe/trunk/include/clang/AST/Type.h
>    cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td
>    cfe/trunk/lib/AST/ASTContext.cpp
>    cfe/trunk/lib/AST/Type.cpp
>    cfe/trunk/lib/Sema/SemaExprObjC.cpp
>    cfe/trunk/lib/Sema/SemaType.cpp
>    cfe/trunk/test/SemaObjC/call-super-2.m
>    cfe/trunk/test/SemaObjC/protocol-archane.m
>    cfe/trunk/test/SemaObjC/protocol-attribute.m
>    cfe/trunk/test/SemaObjC/protocol-qualified-class-unsupported.m
>
> Modified: cfe/trunk/include/clang/AST/Type.h
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/AST/Type.h?rev=76741&r1=76740&r2=76741&view=diff
>
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- cfe/trunk/test/SemaObjC/call-super-2.m (original)
> +++ cfe/trunk/test/SemaObjC/call-super-2.m Wed Jul 22 11:07:01 2009
> @@ -40,8 +40,8 @@
> {
>    int i = [(id <Func>)self class_func0];
>    i += [(id <Func>)super class_func0];    // expected-error  
> {{cannot cast 'super' (it isn't an expression)}}
> -   i += [(Class <Func>)self class_func0];  // expected-error  
> {{protocol qualified 'Class' is unsupported}}
> -   return i + [(Class <Func>)super class_func0]; // expected-error  
> {{protocol qualified 'Class' is unsupported}} // expected-error  
> {{cannot cast 'super' (it isn't an expression)}}
> +   i += [(Class <Func>)self class_func0];  //
> +   return i + [(Class <Func>)super class_func0]; // // expected- 
> error {{cannot cast 'super' (it isn't an expression)}}

For what is worth, gcc does not issue this error.

- Fariborz


>



More information about the cfe-commits mailing list