[llvm-commits] CVS: llvm/include/Support/hash_map hash_set

Vikram Adve vadve at cs.uiuc.edu
Fri Jul 25 09:07:03 PDT 2003


Changes in directory llvm/include/Support:

hash_map updated: 1.8 -> 1.9
hash_set updated: 1.8 -> 1.9

---
Log message:

Include vector into these two files to ensure that specializations like
stl_bvector.h are correctly included into *anything* that includes hash_map
or hash_set.  ext/hash_map includes stl_vector.h directly and leaves
out the specializations, causing truly nasty bugs due to inconsistent
versions of vector<> being used for vector<bool> in different files.


---
Diffs of the changes:

Index: llvm/include/Support/hash_map
diff -u llvm/include/Support/hash_map:1.8 llvm/include/Support/hash_map:1.9
--- llvm/include/Support/hash_map:1.8	Mon Jun 30 16:58:24 2003
+++ llvm/include/Support/hash_map	Fri Jul 25 09:06:13 2003
@@ -42,6 +42,10 @@
 using HASH_NAMESPACE::hash_multimap;
 using HASH_NAMESPACE::hash;
 
+/* Include vector because ext/hash_map includes stl_vector.h and leaves
+   out specializations like stl_bvector.h, causing link conflicts. */
+#include <vector>
+
 #include <Support/HashExtras.h>
 
 #endif


Index: llvm/include/Support/hash_set
diff -u llvm/include/Support/hash_set:1.8 llvm/include/Support/hash_set:1.9
--- llvm/include/Support/hash_set:1.8	Mon Jun 30 16:58:24 2003
+++ llvm/include/Support/hash_set	Fri Jul 25 09:06:13 2003
@@ -41,6 +41,10 @@
 using HASH_NAMESPACE::hash_set;
 using HASH_NAMESPACE::hash;
 
+/* Include vector because ext/hash_set includes stl_vector.h and leaves
+   out specializations like stl_bvector.h, causing link conflicts. */
+#include <vector>
+
 #include <Support/HashExtras.h>
 
 #endif





More information about the llvm-commits mailing list