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 _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits