1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 %s -fsyntax-only -verify -pedantic 2*f4a2713aSLionel Sambuc 3*f4a2713aSLionel Sambuc typedef const char rchar; a(char * a,rchar * b)4*f4a2713aSLionel Sambucint a(char* a, rchar* b) { 5*f4a2713aSLionel Sambuc return a-b; 6*f4a2713aSLionel Sambuc } 7*f4a2713aSLionel Sambuc 8*f4a2713aSLionel Sambuc // <rdar://problem/6520707> f0(void (* fp)(void))9*f4a2713aSLionel Sambucvoid f0(void (*fp)(void)) { 10*f4a2713aSLionel Sambuc int x = fp - fp; // expected-warning{{arithmetic on pointers to the function type 'void (void)' is a GNU extension}} 11*f4a2713aSLionel Sambuc } 12