diff options
Diffstat (limited to 'llvm')
| -rw-r--r-- | llvm/include/llvm/Support/ConvertUTF.h | 24 | ||||
| -rw-r--r-- | llvm/lib/Support/CMakeLists.txt | 2 | ||||
| -rw-r--r-- | llvm/lib/Support/ConvertUTF.cpp (renamed from llvm/lib/Support/ConvertUTF.c) | 6 |
3 files changed, 13 insertions, 19 deletions
diff --git a/llvm/include/llvm/Support/ConvertUTF.h b/llvm/include/llvm/Support/ConvertUTF.h index 5de5774f9db..f714c0ed997 100644 --- a/llvm/include/llvm/Support/ConvertUTF.h +++ b/llvm/include/llvm/Support/ConvertUTF.h @@ -90,6 +90,14 @@ #ifndef LLVM_SUPPORT_CONVERTUTF_H #define LLVM_SUPPORT_CONVERTUTF_H +#include <string> +#include <cstddef> + +// Wrap everything in namespace llvm so that programs can link with llvm and +// their own version of the unicode libraries. + +namespace llvm { + /* --------------------------------------------------------------------- The following 4 definitions are compiler-specific. The C standard does not guarantee that wchar_t has at least @@ -127,11 +135,6 @@ typedef enum { lenientConversion } ConversionFlags; -/* This is for C++ and does no harm in C */ -#ifdef __cplusplus -extern "C" { -#endif - ConversionResult ConvertUTF8toUTF16 ( const UTF8** sourceStart, const UTF8* sourceEnd, UTF16** targetStart, UTF16* targetEnd, ConversionFlags flags); @@ -174,16 +177,9 @@ Boolean isLegalUTF8String(const UTF8 **source, const UTF8 *sourceEnd); unsigned getNumBytesForUTF8(UTF8 firstByte); -#ifdef __cplusplus -} - /*************************************************************************/ /* Below are LLVM-specific wrappers of the functions above. */ -#include <string> -#include <cstddef> - -namespace llvm { template <typename T> class ArrayRef; template <typename T> class SmallVectorImpl; class StringRef; @@ -293,7 +289,3 @@ bool convertUTF8ToUTF16String(StringRef SrcUTF8, } /* end namespace llvm */ #endif - -/* --------------------------------------------------------------------- */ - -#endif diff --git a/llvm/lib/Support/CMakeLists.txt b/llvm/lib/Support/CMakeLists.txt index b188b4cc6cb..9f755450535 100644 --- a/llvm/lib/Support/CMakeLists.txt +++ b/llvm/lib/Support/CMakeLists.txt @@ -40,7 +40,7 @@ add_llvm_library(LLVMSupport COM.cpp CommandLine.cpp Compression.cpp - ConvertUTF.c + ConvertUTF.cpp ConvertUTFWrapper.cpp CrashRecoveryContext.cpp DataExtractor.cpp diff --git a/llvm/lib/Support/ConvertUTF.c b/llvm/lib/Support/ConvertUTF.cpp index 128459a1d54..39fd218d3f0 100644 --- a/llvm/lib/Support/ConvertUTF.c +++ b/llvm/lib/Support/ConvertUTF.cpp @@ -53,6 +53,8 @@ #endif #include <assert.h> +namespace llvm { + static const int halfShift = 10; /* used for shifting by 10 bits */ static const UTF32 halfBase = 0x0010000UL; @@ -62,8 +64,6 @@ static const UTF32 halfMask = 0x3FFUL; #define UNI_SUR_HIGH_END (UTF32)0xDBFF #define UNI_SUR_LOW_START (UTF32)0xDC00 #define UNI_SUR_LOW_END (UTF32)0xDFFF -#define false 0 -#define true 1 /* --------------------------------------------------------------------- */ @@ -706,3 +706,5 @@ ConversionResult ConvertUTF8toUTF32(const UTF8 **sourceStart, similarly unrolled loops. --------------------------------------------------------------------- */ + +} // namespace llvm |

