1*3c1aa20cSAlvin Wong // RUN: %clang_cl_asan %Od %s %Fe%t 2673dc3d4SNico Weber // RUN: %run %t 3673dc3d4SNico Weber 4673dc3d4SNico Weber #include <windows.h> 5673dc3d4SNico Weber #include <process.h> 6673dc3d4SNico Weber thread_proc(void *)7673dc3d4SNico Weberunsigned WINAPI thread_proc(void *) { 8673dc3d4SNico Weber volatile char stack_buffer[42]; 9673dc3d4SNico Weber for (int i = 0; i < sizeof(stack_buffer); ++i) 10673dc3d4SNico Weber stack_buffer[i] = 42; 11673dc3d4SNico Weber return 0; 12673dc3d4SNico Weber } 13673dc3d4SNico Weber main()14673dc3d4SNico Weberint main() { 15673dc3d4SNico Weber HANDLE thr = (HANDLE)_beginthreadex(NULL, 0, thread_proc, NULL, 0, NULL); 16673dc3d4SNico Weber if (thr == 0) 17673dc3d4SNico Weber return 1; 18673dc3d4SNico Weber if (WAIT_OBJECT_0 != WaitForSingleObject(thr, INFINITE)) 19673dc3d4SNico Weber return 2; 20673dc3d4SNico Weber CloseHandle(thr); 21673dc3d4SNico Weber } 22