Skip to content

Commit

Permalink
Support: Introduce thread.h.
Browse files Browse the repository at this point in the history
This header is a wrapper for <thread> that works around problems with the
MSVC headers when exceptions are disabled.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@246218 91177308-0d34-0410-b5e6-96231b3b80d8
  • Loading branch information
pcc committed Aug 27, 2015
1 parent 69019c5 commit a74d34a
Showing 1 changed file with 34 additions and 0 deletions.
34 changes: 34 additions & 0 deletions include/llvm/Support/thread.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
//===-- llvm/Support/thread.h - Wrapper for <thread> ------------*- C++ -*-===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
//
// This header is a wrapper for <thread> that works around problems with the
// MSVC headers when exceptions are disabled.
//
//===----------------------------------------------------------------------===//

#ifndef LLVM_SUPPORT_THREAD_H
#define LLVM_SUPPORT_THREAD_H

#ifdef _MSC_VER
// concrt.h depends on eh.h for __uncaught_exception declaration
// even if we disable exceptions.
#include <eh.h>

// Suppress 'C++ exception handler used, but unwind semantics are not enabled.'
#pragma warning(push)
#pragma warning(disable:4530)
#endif

#include <thread>

#ifdef _MSC_VER
#pragma warning(pop)
#endif

#endif

0 comments on commit a74d34a

Please sign in to comment.