1*67e74705SXin Li // RUN: %clang_cc1 -fsyntax-only -verify %s 2*67e74705SXin Li 3*67e74705SXin Li int &f(); 4*67e74705SXin Li 5*67e74705SXin Li struct A { 6*67e74705SXin Li void f(); 7*67e74705SXin Li }; 8*67e74705SXin Li 9*67e74705SXin Li typedef int I; 10*67e74705SXin Li g()11*67e74705SXin Livoid g() { 12*67e74705SXin Li __builtin_call_with_static_chain(f(), f) = 42; 13*67e74705SXin Li __builtin_call_with_static_chain(A().f(), f); // expected-error {{first argument to __builtin_call_with_static_chain must be a non-member call expression}} 14*67e74705SXin Li __builtin_call_with_static_chain((42).~I(), f); // expected-error {{first argument to __builtin_call_with_static_chain must not be a pseudo-destructor call}} 15*67e74705SXin Li } 16