diff options
author | Ted Kremenek <kremenek@apple.com> | 2008-03-04 17:47:18 +0000 |
---|---|---|
committer | Ted Kremenek <kremenek@apple.com> | 2008-03-04 17:47:18 +0000 |
commit | fb79f7cc00f9c1e04f11ed636eefb36d246b0fb8 (patch) | |
tree | ddc44a76013eed4792dead9ee6581ad531e5d524 /include/clang/Basic | |
parent | 16d81566604ca44ef8e71a6807e16944223e5ace (diff) |
TargetInfo objects now own the TargetInfoImpl objects they refer to.
TargetInfo::AddSecondaryTarget is now private, as it is only used during
object construction.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@47891 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/clang/Basic')
-rw-r--r-- | include/clang/Basic/TargetInfo.h | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/include/clang/Basic/TargetInfo.h b/include/clang/Basic/TargetInfo.h index 6d4147c353..0550e51e82 100644 --- a/include/clang/Basic/TargetInfo.h +++ b/include/clang/Basic/TargetInfo.h @@ -38,9 +38,6 @@ namespace Builtin { struct Info; } /// 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 @@ class TargetInfo { 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 @@ public: const std::string* TripledEnd, Diagnostic* Diags = NULL); + ~TargetInfo(); + //==----------------------------------------------------------------==/ // Accessors. //==----------------------------------------------------------------==/ @@ -99,11 +103,6 @@ public: 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 |