1// RUN: %clang -fsyntax-only -target i686-pc-win32 %s 2// RUN: %clang -fsyntax-only -target i386-mingw32 %s 3 4// Something in MSVC's headers (pulled in e.g. by <crtdefs.h>) defines __null 5// to something, mimick that. 6#define __null 7 8#include <stddef.h> 9 10// __null is used as a type annotation in MS headers, with __null defined to 11// nothing in regular builds. This should continue to work even with stddef.h 12// included. 13void f(__null void* p) { } 14 15// NULL should work fine even with __null defined to nothing. 16void* p = NULL; 17