llvm/lib/System/Win32/Alarm.inc
Sebastian Redl 48fe63526e Fix the Win32 VS2008 build:
- Make type declarations match the struct/class keyword of the definition.
 - Move AddSignalHandler into the namespace where it belongs.
 - Correctly call functions from template base.
 - Some other small changes.
With this patch, LLVM and Clang should build properly and with far less noise under VS2008.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@67347 91177308-0d34-0410-b5e6-96231b3b80d8
2009-03-19 23:26:52 +00:00

44 lines
1.2 KiB
C++

//===-- Alarm.inc - Implement Win32 Alarm Support ---------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This file implements the Win32 Alarm support.
//
//===----------------------------------------------------------------------===//
#include <cassert>
using namespace llvm;
/// NestedSOI - Sanity check. Alarms cannot be nested or run in parallel.
/// This ensures that they never do.
static bool NestedSOI = false;
void sys::SetupAlarm(unsigned seconds) {
assert(!NestedSOI && "sys::SetupAlarm calls cannot be nested!");
NestedSOI = true;
// FIXME: Implement for Win32
}
void sys::TerminateAlarm() {
assert(NestedSOI && "sys::TerminateAlarm called without sys::SetupAlarm!");
// FIXME: Implement for Win32
NestedSOI = false;
}
int sys::AlarmStatus() {
// FIXME: Implement for Win32
return 0;
}
// Don't pull in all of the Windows headers.
extern "C" void __stdcall Sleep(unsigned long);
void sys::Sleep(unsigned n) {
::Sleep(n*1000);
}