<br><div class="gmail_quote">On Tue, Sep 6, 2011 at 3:57 PM, Chris Lattner <span dir="ltr"><<a href="mailto:clattner@apple.com">clattner@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">

<div class="im"><br>
On Sep 4, 2011, at 9:14 PM, Talin wrote:<br>
<br>
> I've managed to eliminate nearly all uses of std::string from my frontend. About the only ones remaining are all of the occurrences of cl::opt<std::string>. Is it likely that at some point we'll see support for SmallString in the command-line lib?<br>


<br>
</div>The better fix is to switch cl::opt to allow StringRef: there is no specific reason to copy strings out of argv. The only thing to watch out for is the "parsecommandlineoptions" API, which doesn't necessarily own the underlying string pointers.<br>


<font color="#888888"><br></font></blockquote><div>It looks like it uses StringRef already internally. Although it also appears to use a mix of std::vector and SmallVector. I haven't really looked at it that deeply.</div>

<div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"><font color="#888888">
-Chris<br>
<br>
</font></blockquote></div><br><br clear="all"><div><br></div>-- <br>-- Talin<br>