*** empty log message ***

llvm-svn: 3077
diff --git a/llvm/include/llvm/Analysis/DSGraphTraits.h b/llvm/include/llvm/Analysis/DSGraphTraits.h
index 0a25622..4397f62 100644
--- a/llvm/include/llvm/Analysis/DSGraphTraits.h
+++ b/llvm/include/llvm/Analysis/DSGraphTraits.h
@@ -9,10 +9,11 @@
 #ifndef LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H
 #define LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H
 
-#include "Support/GraphTraits.h"
 #include "llvm/Analysis/DataStructure.h"
+#include "Support/GraphTraits.h"
+#include "Support/iterator"
 
-class DSNodeIterator : public std::forward_iterator<DSNode, ptrdiff_t> {
+class DSNodeIterator : public forward_iterator<DSNode, ptrdiff_t> {
   friend class DSNode;
   DSNode * const Node;
   unsigned Link;
diff --git a/llvm/include/llvm/Analysis/DataStructureGraph.h b/llvm/include/llvm/Analysis/DataStructureGraph.h
index 0a25622..4397f62 100644
--- a/llvm/include/llvm/Analysis/DataStructureGraph.h
+++ b/llvm/include/llvm/Analysis/DataStructureGraph.h
@@ -9,10 +9,11 @@
 #ifndef LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H
 #define LLVM_ANALYSIS_DATASTRUCTURE_GRAPH_H
 
-#include "Support/GraphTraits.h"
 #include "llvm/Analysis/DataStructure.h"
+#include "Support/GraphTraits.h"
+#include "Support/iterator"
 
-class DSNodeIterator : public std::forward_iterator<DSNode, ptrdiff_t> {
+class DSNodeIterator : public forward_iterator<DSNode, ptrdiff_t> {
   friend class DSNode;
   DSNode * const Node;
   unsigned Link;
diff --git a/llvm/include/llvm/CodeGen/MachineInstrAnnot.h b/llvm/include/llvm/CodeGen/MachineInstrAnnot.h
index fa80c72..d5f1da2 100644
--- a/llvm/include/llvm/CodeGen/MachineInstrAnnot.h
+++ b/llvm/include/llvm/CodeGen/MachineInstrAnnot.h
@@ -93,4 +93,4 @@
 };
 
 
-#endif MACHINE_INSTR_ANNOT_h
+#endif
diff --git a/llvm/include/llvm/Support/InstIterator.h b/llvm/include/llvm/Support/InstIterator.h
index eb64113..4f8f2af 100644
--- a/llvm/include/llvm/Support/InstIterator.h
+++ b/llvm/include/llvm/Support/InstIterator.h
@@ -33,6 +33,15 @@
   typedef unsigned                        difference_type;
   typedef BIty                            pointer;
   typedef IIty                            reference;
+
+  // Copy constructor...
+  template<typename A, typename B, typename C, typename D>
+  InstIterator(const InstIterator<A,B,C,D> &II)
+    : BBs(II.BBs), BB(II.BB), BI(II.BI) {}
+
+  template<typename A, typename B, typename C, typename D>
+  InstIterator(InstIterator<A,B,C,D> &II)
+    : BBs(II.BBs), BB(II.BB), BI(II.BI) {}
   
   template<class M> InstIterator(M &m) 
     : BBs(m.getBasicBlockList()), BB(BBs.begin()) {    // begin ctor