This removes the eating of the error in Archive::Child::getSize() when the characters
[oota-llvm.git] / include / llvm / Support / UnicodeCharRanges.h
index c0075719a6d2fb6999dc14359ab43da31f4a5aa3..9f738dff11075287bb9f6e8a0f93b731823cbbcf 100644 (file)
 #include "llvm/Support/Mutex.h"
 #include "llvm/Support/MutexGuard.h"
 #include "llvm/Support/raw_ostream.h"
-
 #include <algorithm>
 
 namespace llvm {
 namespace sys {
 
+#define DEBUG_TYPE "unicode"
+
 /// \brief Represents a closed range of Unicode code points [Lower, Upper].
 struct UnicodeCharRange {
   uint32_t Lower;
@@ -40,7 +41,7 @@ inline bool operator<(UnicodeCharRange Range, uint32_t Value) {
 /// array.
 class UnicodeCharSet {
 public:
-  typedef llvm::ArrayRef<UnicodeCharRange> CharRanges;
+  typedef ArrayRef<UnicodeCharRange> CharRanges;
 
   /// \brief Constructs a UnicodeCharSet instance from an array of
   /// UnicodeCharRanges.
@@ -50,11 +51,12 @@ public:
   /// the constructor, so it makes sense to create as few UnicodeCharSet
   /// instances per each array of ranges, as possible.
 #ifdef NDEBUG
-  LLVM_CONSTEXPR
-#endif
+  LLVM_CONSTEXPR UnicodeCharSet(CharRanges Ranges) : Ranges(Ranges) {}
+#else
   UnicodeCharSet(CharRanges Ranges) : Ranges(Ranges) {
     assert(rangesAreValid());
   }
+#endif
 
   /// \brief Returns true if the character set contains the Unicode code point
   /// \p C.
@@ -70,17 +72,17 @@ private:
     for (CharRanges::const_iterator I = Ranges.begin(), E = Ranges.end();
          I != E; ++I) {
       if (I != Ranges.begin() && Prev >= I->Lower) {
-        DEBUG(llvm::dbgs() << "Upper bound 0x");
-        DEBUG(llvm::dbgs().write_hex(Prev));
-        DEBUG(llvm::dbgs() << " should be less than succeeding lower bound 0x");
-        DEBUG(llvm::dbgs().write_hex(I->Lower) << "\n");
+        DEBUG(dbgs() << "Upper bound 0x");
+        DEBUG(dbgs().write_hex(Prev));
+        DEBUG(dbgs() << " should be less than succeeding lower bound 0x");
+        DEBUG(dbgs().write_hex(I->Lower) << "\n");
         return false;
       }
       if (I->Upper < I->Lower) {
-        DEBUG(llvm::dbgs() << "Upper bound 0x");
-        DEBUG(llvm::dbgs().write_hex(I->Lower));
-        DEBUG(llvm::dbgs() << " should not be less than lower bound 0x");
-        DEBUG(llvm::dbgs().write_hex(I->Upper) << "\n");
+        DEBUG(dbgs() << "Upper bound 0x");
+        DEBUG(dbgs().write_hex(I->Lower));
+        DEBUG(dbgs() << " should not be less than lower bound 0x");
+        DEBUG(dbgs().write_hex(I->Upper) << "\n");
         return false;
       }
       Prev = I->Upper;
@@ -92,6 +94,8 @@ private:
   const CharRanges Ranges;
 };
 
+#undef DEBUG_TYPE // "unicode"
+
 } // namespace sys
 } // namespace llvm