[cfe-commits] r47891 - in /cfe/trunk: Basic/Targets.cpp include/clang/Basic/TargetInfo.h
Ted Kremenek
kremenek at apple.com
Tue Mar 4 09:47:45 PST 2008
I accidentally closed my editor window too early when writing the
commit log. I just wanted to add that this patch was contributed by
Sam Bishop.
On Mar 4, 2008, at 9:47 AM, Ted Kremenek wrote:
> Author: kremenek
> Date: Tue Mar 4 11:47:18 2008
> New Revision: 47891
>
> URL: http://llvm.org/viewvc/llvm-project?rev=47891&view=rev
> Log:
> TargetInfo objects now own the TargetInfoImpl objects they refer to.
> TargetInfo::AddSecondaryTarget is now private, as it is only used
> during
> object construction.
>
> Modified:
> cfe/trunk/Basic/Targets.cpp
> cfe/trunk/include/clang/Basic/TargetInfo.h
>
> Modified: cfe/trunk/Basic/Targets.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/Basic/Targets.cpp?rev=47891&r1=47890&r2=47891&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- cfe/trunk/Basic/Targets.cpp (original)
> +++ cfe/trunk/Basic/Targets.cpp Tue Mar 4 11:47:18 2008
> @@ -826,3 +826,10 @@
>
> return TI;
> }
> +
> +TargetInfo::~TargetInfo() {
> + delete PrimaryTarget;
> + for (unsigned i = 0; i < SecondaryTargets.size(); ++i)
> + delete SecondaryTargets[i];
> +}
> +
>
> Modified: cfe/trunk/include/clang/Basic/TargetInfo.h
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Basic/TargetInfo.h?rev=47891&r1=47890&r2=47891&view=diff
>
> =
> =
> =
> =
> =
> =
> =
> =
> ======================================================================
> --- cfe/trunk/include/clang/Basic/TargetInfo.h (original)
> +++ cfe/trunk/include/clang/Basic/TargetInfo.h Tue Mar 4 11:47:18
> 2008
> @@ -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
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
More information about the cfe-commits
mailing list