aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/objc.dg/attributes/method-unavailable-3.m
blob: 9e55ae11e1fd10ea9a699a7456d2c6f928bdc85c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* Test __attribute__ ((unavailable)) */
/* { dg-do compile } */
/* { dg-options "" } */

#include <objc/objc.h>

/* Test that __attribute__ ((__unavailable__)) works as well as __attribute__ ((unavailable)).  */
@interface MyClass
{
  Class isa;
}
+ (int) unavailableClassMethod: (id)firstObject, ...    __attribute__((__unavailable__));
- (int) unavailableInstanceMethod: (id)firstobject, ... __attribute__((__unavailable__));
@end

void foo (void)
{
  MyClass *object = nil;

  [MyClass unavailableClassMethod: object, nil];           /* { dg-error "is unavailable" } */
  [object unavailableInstanceMethod: object, nil];         /* { dg-error "is unavailable" } */
}