1*67e74705SXin Li // RUN: %clang_cc1 %s -verify -fsyntax-only -triple arm-none-linux 2*67e74705SXin Li class Foo { 3*67e74705SXin Li void bar(); 4*67e74705SXin Li static void bar2(); 5*67e74705SXin Li unsigned v; 6*67e74705SXin Li static unsigned s; 7*67e74705SXin Li }; 8*67e74705SXin Li bar()9*67e74705SXin Livoid __attribute__((naked)) Foo::bar() { // expected-note{{attribute is here}} 10*67e74705SXin Li asm("mov r2, %0" : : "r"(v)); // expected-error{{'this' pointer references not allowed in naked functions}} 11*67e74705SXin Li } 12*67e74705SXin Li bar2()13*67e74705SXin Livoid __attribute__((naked)) Foo::bar2() { 14*67e74705SXin Li asm("mov r2, %0" : : "r"(s)); // static member reference is OK 15*67e74705SXin Li } 16