//===-- llvm/ADT/iterator - Portable wrapper around <iterator> --*- C++ -*-===//
// 
//                     The LLVM Compiler Infrastructure
//
// This file 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
//
// The #if directives' expressions are filled in by Autoconf.
//
//===----------------------------------------------------------------------===//

#warning This files includes old 'llvm/ADT/iterator' file, which was replaced  \
by 'llvm/ADT/iterator.h'. Please consider upgrading the source.

#include "llvm/ADT/iterator.h"

