diff --git a/Basic/Targets.cpp b/Basic/Targets.cpp
index f77bef1..d87e386 100644
--- a/Basic/Targets.cpp
+++ b/Basic/Targets.cpp
@@ -826,3 +826,10 @@
   
   return TI;
 }
+
+TargetInfo::~TargetInfo() {
+  delete PrimaryTarget;
+  for (unsigned i = 0; i < SecondaryTargets.size(); ++i)
+    delete SecondaryTargets[i];
+}
+
diff --git a/include/clang/Basic/TargetInfo.h b/include/clang/Basic/TargetInfo.h
index 6d4147c..0550e51 100644
--- a/include/clang/Basic/TargetInfo.h
+++ b/include/clang/Basic/TargetInfo.h
@@ -38,9 +38,6 @@
 /// target, it will warn the first time the size of the 'long' datatype is
 /// queried.
 ///
-/// Note that TargetInfo does not take ownership of the various targets or the 
-/// diagnostic info, but does expect them to be alive for as long as it is.
-///
 class TargetInfo {
   /// Primary - This tracks the primary target in the target set.
   ///
@@ -75,6 +72,11 @@
     WCharWidth = 0;
   }
 
+  /// AddSecondaryTarget - Add a secondary target to the target set.
+  void AddSecondaryTarget(const TargetInfoImpl *Secondary) {
+    SecondaryTargets.push_back(Secondary);
+  }
+
 public:  
   /// CreateTargetInfo - Create a TargetInfo object from a group of
   ///  target triples.  The first target triple is considered the primary
@@ -83,6 +85,8 @@
                                       const std::string* TripledEnd,
                                       Diagnostic* Diags = NULL);
 
+  ~TargetInfo();
+
   //==----------------------------------------------------------------==/
   //                       Accessors.
   //==----------------------------------------------------------------==/  
@@ -99,11 +103,6 @@
     return !NonPortable;
   }
   
-  /// AddSecondaryTarget - Add a secondary target to the target set.
-  void AddSecondaryTarget(const TargetInfoImpl *Secondary) {
-    SecondaryTargets.push_back(Secondary);
-  }
-  
   ///===---- Target property query methods --------------------------------===//
 
   /// DiagnoseNonPortability - Emit a diagnostic indicating that the current
