xref: /llvm-project/clang/test/APINotes/instancetype.m (revision 36e25772ddd049c8c742e55fbd2b3c9aaceb7060)
1// RUN: rm -rf %t
2// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t/ModulesCache -fapinotes-modules -fsyntax-only -I %S/Inputs/Headers -verify %s
3
4@import InstancetypeModule;
5
6void test() {
7  // The nullability is here to verify that the API notes were applied.
8  int good = [SomeSubclass instancetypeFactoryMethod]; // expected-error {{initializing 'int' with an expression of type 'SomeSubclass * _Nonnull'}}
9  int bad = [SomeSubclass staticFactoryMethod]; // expected-error {{initializing 'int' with an expression of type 'SomeBaseClass * _Nonnull'}}
10}
11