1*67e74705SXin Li// RUN: rm -rf %t 2*67e74705SXin Li// RUN: %clang_cc1 -fmodules -fimplicit-module-maps -fmodules-cache-path=%t -I %S/Inputs/attr-unavailable %s -fsyntax-only -verify 3*67e74705SXin Li 4*67e74705SXin Li@import two; 5*67e74705SXin Livoid f(id x) { 6*67e74705SXin Li [x method1]; 7*67e74705SXin Li} 8*67e74705SXin Li 9*67e74705SXin Li@import oneA; 10*67e74705SXin Livoid g(id x) { 11*67e74705SXin Li [x method2]; // expected-error{{'method2' is unavailable}} 12*67e74705SXin Li // [email protected]:2 {{'method2' has been explicitly marked unavailable here}} 13*67e74705SXin Li [x method3]; // expected-error{{'method3' is unavailable}} 14*67e74705SXin Li // [email protected]:3 {{'method3' has been explicitly marked unavailable here}} 15*67e74705SXin Li} 16*67e74705SXin Li 17*67e74705SXin Li@import oneB; 18*67e74705SXin Livoid h(id x) { 19*67e74705SXin Li [x method2]; // could be from interface D in module oneB 20*67e74705SXin Li} 21*67e74705SXin Li 22*67e74705SXin Li@import oneC; 23*67e74705SXin Livoid i(id x) { 24*67e74705SXin Li [x method3]; // could be from interface E in module oncC 25*67e74705SXin Li} 26