From 4068957f8b3372e5cfbf2417163ed70108c29b6a Mon Sep 17 00:00:00 2001
From: Roberto Raggi <roberto.raggi@nokia.com>
Date: Mon, 30 Nov 2009 17:37:08 +0100
Subject: [PATCH] Removed the usage of CPlusPlus::Array<T>

---
 src/shared/cplusplus/Control.cpp | 28 ++++++++++++++++------------
 1 file changed, 16 insertions(+), 12 deletions(-)

diff --git a/src/shared/cplusplus/Control.cpp b/src/shared/cplusplus/Control.cpp
index 4e6ea089b8c..79eafaa0cff 100644
--- a/src/shared/cplusplus/Control.cpp
+++ b/src/shared/cplusplus/Control.cpp
@@ -66,16 +66,20 @@ static void delete_map_entries(_Iterator first, _Iterator last)
         delete first->second;
 }
 
+template <typename _Iterator>
+static void delete_array_entries(_Iterator first, _Iterator last)
+{
+    for (; first != last; ++first)
+        delete *first;
+}
+
 template <typename _Map>
 static void delete_map_entries(const _Map &m)
 { delete_map_entries(m.begin(), m.end()); }
 
 template <typename _Array>
 static void delete_array_entries(const _Array &a)
-{
-    for (unsigned i = 0; i < a.size(); ++i)
-        delete a.at(i);
-}
+{ delete_array_entries(a.begin(), a.end()); }
 
 class Control::Data
 {
@@ -515,16 +519,16 @@ public:
 
     // types
     VoidType voidType;
-    Array<IntegerType *> integerTypes;
-    Array<FloatType *> floatTypes;
-    Array<PointerToMemberType *> pointerToMemberTypes;
-    Array<PointerType *> pointerTypes;
-    Array<ReferenceType *> referenceTypes;
-    Array<ArrayType *> arrayTypes;
-    Array<NamedType *> namedTypes;
+    std::vector<IntegerType *> integerTypes;
+    std::vector<FloatType *> floatTypes;
+    std::vector<PointerToMemberType *> pointerToMemberTypes;
+    std::vector<PointerType *> pointerTypes;
+    std::vector<ReferenceType *> referenceTypes;
+    std::vector<ArrayType *> arrayTypes;
+    std::vector<NamedType *> namedTypes;
 
     // symbols
-    Array<Symbol *> symbols;
+    std::vector<Symbol *> symbols;
 
     // ObjC context keywords:
     Identifier *objcGetterId;
-- 
GitLab