Make it possible to include llvm-c without including C++ headers. Patch by Filip Pizlo.

llvm-svn: 178713
This commit is contained in:
Evan Cheng
2013-04-03 23:12:39 +00:00
parent c2d5bf5c53
commit 51a7a9d712
6 changed files with 29 additions and 13 deletions

View File

@@ -22,9 +22,11 @@
#include "llvm-c/Core.h"
#include "llvm/Config/llvm-config.h"
#ifdef __cplusplus
#if defined(__cplusplus) && !defined(LLVM_DO_NOT_INCLUDE_CPP_HEADERS)
#include "llvm/Object/ObjectFile.h"
#endif /* defined(__cplusplus) && !defined(LLVM_DO_NOT_INCLUDE_CPP_HEADERS) */
#ifdef __cplusplus
extern "C" {
#endif
@@ -99,7 +101,9 @@ const char *LLVMGetRelocationValueString(LLVMRelocationIteratorRef RI);
#ifdef __cplusplus
}
#endif
#if defined(__cplusplus) && !defined(LLVM_DO_NOT_INCLUDE_CPP_HEADERS)
namespace llvm {
namespace object {
inline ObjectFile *unwrap(LLVMObjectFileRef OF) {
@@ -142,8 +146,8 @@ namespace llvm {
}
}
#endif /* defined(__cplusplus) && !defined(LLVM_DO_NOT_INCLUDE_CPP_HEADERS) */
#endif /* defined(__cplusplus) */
#endif