diff options
author | Brian Gaeke <gaeke@uiuc.edu> | 2004-02-23 18:16:10 +0000 |
---|---|---|
committer | Brian Gaeke <gaeke@uiuc.edu> | 2004-02-23 18:16:10 +0000 |
commit | 0e67d4cfe27413aa3f12e541c4acb1c411aaeab1 (patch) | |
tree | c49288efe6d31b3a31d9eebfe3ee4a8d35e37ac9 | |
parent | 587bef9d1acfb93a70558a39a4724f3794b1f410 (diff) |
Replaced by include/Support/iterator.in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11753 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | include/Support/iterator | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/include/Support/iterator b/include/Support/iterator deleted file mode 100644 index b26790f4f2..0000000000 --- a/include/Support/iterator +++ /dev/null @@ -1,76 +0,0 @@ -//===-- Support/iterator - "Portable" wrapper around <iterator> -*- C++ -*-===// -// -// The LLVM Compiler Infrastructure -// -// This file was developed by the LLVM research group and is distributed under -// the University of Illinois Open Source License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// -// -// This file provides a wrapper around the mysterious <iterator> header file. -// In GCC 2.95.3, the file defines a bidirectional_iterator class (and other -// friends), instead of the standard iterator class. In GCC 3.1, the -// bidirectional_iterator class got moved out and the new, standards compliant, -// iterator<> class was added. Because there is nothing that we can do to get -// correct behavior on both compilers, we have this header with #ifdef's. Gross -// huh? -// -// By #includ'ing this file, you get the contents of <iterator> plus the -// following classes in the global namespace: -// -// 1. bidirectional_iterator -// 2. forward_iterator -// -//===----------------------------------------------------------------------===// - -#ifndef SUPPORT_ITERATOR -#define SUPPORT_ITERATOR - -#include "Config/config.h" - -#include <iterator> - -////////////////////////////////////////////////////////////////////////////// -// If the bidirectional iterator is not defined, attempt to define it using -// the C++ standard iterator. -////////////////////////////////////////////////////////////////////////////// -#ifndef HAVE_BI_ITERATOR -#ifdef HAVE_STD_ITERATOR - -// Define stupid wrappers around std::iterator... -template<class Ty, class PtrDiffTy> -struct bidirectional_iterator - : public std::iterator<std::bidirectional_iterator_tag, Ty, PtrDiffTy> { -}; - -#else -#error "Need to have standard iterator to define bidirectional iterator!" -#endif - -#else - -// Just use bidirectional_iterator directly. -using std::bidirectional_iterator; - -#endif - -////////////////////////////////////////////////////////////////////////////// -// If the forward iterator is not defined, attempt to define it using the -// C++ standard iterator. -////////////////////////////////////////////////////////////////////////////// -#ifndef HAVE_FWD_ITERATOR -#ifdef HAVE_STD_ITERATOR -template<class Ty, class PtrDiffTy> -struct forward_iterator - : public std::iterator<std::forward_iterator_tag, Ty, PtrDiffTy> { -}; -#else -#error "Need to have standard iterator to define forward iterator!" -#endif -#else -// Just use forward iterator directly. -using std::forward_iterator; -#endif - - -#endif |