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