[llvm-commits] CVS: llvm/include/llvm/ADT/SmallVector.h

Jeff Cohen jeffc at jolt-lang.org
Sun Mar 4 16:46:40 PST 2007



Changes in directory llvm/include/llvm/ADT:

SmallVector.h updated: 1.25 -> 1.26
---
Log message:

Elminate tabs and improve comments.

---
Diffs of the changes:  (+8 -7)

 SmallVector.h |   15 ++++++++-------
 1 files changed, 8 insertions(+), 7 deletions(-)


Index: llvm/include/llvm/ADT/SmallVector.h
diff -u llvm/include/llvm/ADT/SmallVector.h:1.25 llvm/include/llvm/ADT/SmallVector.h:1.26
--- llvm/include/llvm/ADT/SmallVector.h:1.25	Sun Mar  4 18:00:41 2007
+++ llvm/include/llvm/ADT/SmallVector.h	Sun Mar  4 18:46:22 2007
@@ -20,19 +20,20 @@
 
 #ifdef _MSC_VER
 namespace std {
-  // Fix bug in VC++ implementation of std::uninitialized_copy.  Define
-  // additional overloads so that the copy is recognized as a scalar and
-  // not an object copy.
+  // Work around flawed VC++ implementation of std::uninitialized_copy.  Define
+  // additional overloads so that elements with pointer types are recognized as
+  // scalars and not objects, causing bizarre type conversion errors.
+  // FIXME: this hack may or may not be correct for Visual Studio 2005.
   template<class T1, class T2>
   inline _Scalar_ptr_iterator_tag _Ptr_cat(T1 **, T2 **) {
-	  _Scalar_ptr_iterator_tag _Cat;
-	  return _Cat;
+    _Scalar_ptr_iterator_tag _Cat;
+    return _Cat;
   }
 
   template<class T1, class T2>
   inline _Scalar_ptr_iterator_tag _Ptr_cat(T1* const *, T2 **) {
-	  _Scalar_ptr_iterator_tag _Cat;
-	  return _Cat;
+    _Scalar_ptr_iterator_tag _Cat;
+    return _Cat;
   }
 }
 #endif






More information about the llvm-commits mailing list