Mercurial > hg > CbC > CbC_llvm
view clang/test/SemaObjC/protocol-qualified-class-unsupported.m @ 150:1d019706d866
LLVM10
author | anatofuz |
---|---|
date | Thu, 13 Feb 2020 15:10:13 +0900 |
parents | |
children |
line wrap: on
line source
// RUN: %clang_cc1 -fsyntax-only -verify %s // expected-no-diagnostics #include <stddef.h> typedef struct objc_class *Class; typedef struct objc_object { Class isa; } *id; id objc_getClass(const char *s); @interface Object + self; @end @protocol Func + (void) class_func0; - (void) instance_func0; @end @interface Derived: Object <Func> @end @interface Derived2: Object <Func> @end static void doSomething(Class <Func> unsupportedObjectType) { [unsupportedObjectType class_func0]; } static void doSomethingElse(id <Func> pleaseConvertToThisType) { [pleaseConvertToThisType class_func0]; } int main(int argv, char *argc[]) { doSomething([Derived self]); doSomething([Derived2 self]); doSomethingElse([Derived self]); doSomethingElse([Derived2 self]); }