1*f4a2713aSLionel Sambuc // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=i686-mingw32 2*f4a2713aSLionel Sambuc // RUN: %clang_cc1 %s -fsyntax-only -verify -triple=x86_64-mingw32 3*f4a2713aSLionel Sambuc // expected-no-diagnostics 4*f4a2713aSLionel Sambuc 5*f4a2713aSLionel Sambuc // mingw-w64's intrin.h has decls below. 6*f4a2713aSLionel Sambuc // we should accept them. 7*f4a2713aSLionel Sambuc extern unsigned int __builtin_ia32_crc32qi (unsigned int, unsigned char); 8*f4a2713aSLionel Sambuc extern unsigned int __builtin_ia32_crc32hi (unsigned int, unsigned short); 9*f4a2713aSLionel Sambuc extern unsigned int __builtin_ia32_crc32si (unsigned int, unsigned int); 10*f4a2713aSLionel Sambuc 11*f4a2713aSLionel Sambuc // GCC documents these as unsigned, but they are defined with a signed argument. 12*f4a2713aSLionel Sambuc extern int __builtin_ffs(int); 13*f4a2713aSLionel Sambuc extern int __builtin_ffsl(long); 14*f4a2713aSLionel Sambuc extern int __builtin_ffsll(long long); 15