<span class="Apple-style-span" style="font-family: arial, sans-serif; font-size: 13px; border-collapse: collapse; white-space: pre; -webkit-border-horizontal-spacing: 2px; -webkit-border-vertical-spacing: 2px; "><div>In a call from clang::driver::toolchains::Darwin::TranslateArgs:</div>
<div><br></div><div><font class="Apple-style-span" face="'courier new', monospace">DerivedArgList *Darwin::TranslateArgs(InputArgList &Args,
                                      const char *BoundArch) const {
</font></div><div><font class="Apple-style-span" face="'courier new', monospace">[..]</font></div><div><font class="Apple-style-span" face="'courier new', monospace">      } else {
        const Option *O = Opts.getOption(options::OPT_mmacosx_version_min_EQ);
        OSXVersion = DAL->MakeJoinedArg(0, O, MacosxVersionMin);
        DAL->append(OSXVersion);    <font class="Apple-style-span" color="#FF0000">// this call here does save a reference to the Arg *, but delete is not called on it</font></font></div><div><br></div>MakeJoinedArg returns a new JoinedArg and it looks like no-one deletes it.</span><br clear="all">
valgrind reports the JoinedArg reference as lost, but I was unable to confirm with leaks.<br><div><br></div><div>I'm not sure who is supposed to delete the reference, i.e. DerivedArgList itself or the caller of MakeJoinedArg.</div>
<div><br></div><div>Should I report this in bugzilla?</div><div><br>-- <br>Cristi
</div>