view clang/test/SemaObjCXX/synchronized.mm @ 222:81f6424ef0e3 llvm-original

LLVM original branch
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Sun, 18 Jul 2021 22:10:01 +0900
parents 1d019706d866
children
line wrap: on
line source

// RUN: %clang_cc1 -fsyntax-only -verify -Wno-objc-root-class %s

@interface PBXTrackableTaskManager @end
@implementation PBXTrackableTaskManager @end

struct x {
  operator PBXTrackableTaskManager *() const { return 0; }
} a;

struct y {
  operator int *() const { return 0; }
} b;

void test1() {
  @synchronized (a) {
  }

  @synchronized (b) {  // expected-error {{@synchronized requires an Objective-C object type ('struct y' invalid)}}
  }
}