1/* Contributed by Nicola Pero <nicola.pero@meta-innovation.com>, November 2010.  */
2/* { dg-do compile } */
3#include <objc/objc.h>
4
5typedef int Integer;
6
7@class MyClass;
8
9typedef MyClass AClass;
10
11@protocol MyProtocol
12- (void) method;
13@end
14
15Class <MyProtocol> class_object; /* This is fine.  */
16
17id <MyProtocol> object; /* This is fine.  */
18
19AClass <MyProtocol> *object1; /* This is fine.  */
20
21Integer <MyProtocol> *object2; /* { dg-error "'Integer' {aka 'int'} is not a template" } */
22/* { dg-error ".MyProtocol. was not declared in this scope" "" { target *-*-* } .-1 } */
23
24Integer <NonExistingProtocol> *object3; /* { dg-error "'Integer' {aka 'int'} is not a template" } */
25/* { dg-error ".NonExistingProtocol. was not declared in this scope" "" { target *-*-* } .-1 } */
26