<div class="gmail_quote">On Thu, Oct 20, 2011 at 5:03 PM, Devang Patel <span dir="ltr"><<a href="mailto:dpatel@apple.com">dpatel@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 style="word-wrap:break-word"><br><div><div class="im"><div>On Oct 20, 2011, at 4:14 PM, Nick Lewycky wrote:</div><br><blockquote type="cite"><div>On 20 October 2011 16:00, Devang Patel <span dir="ltr"><<a href="mailto:dpatel@apple.com" target="_blank">dpatel@apple.com</a>></span> wrote:</div>
<div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div style="word-wrap:break-word">What about following approach... </div></blockquote><div><br></div><div>I don't like it because we've been nearly successful avoiding things which would diverge a Google-build of clang from an open-source build of clang. Is there no way we can get this functionality without an ifdef? Is there a reason you don't like adding a flag?</div>
</div></div></blockquote><div><br></div></div><div>Essentially, what you're looking  for to say is, "on this platform use pwd". Have you considered an alternative to use configure check to enable use of PWD ?</div>
<div><br></div><div>I want you to exhaust all alternatives before deciding to add a command line flag. Adding a command line flag is usually easy way out, but removing an command line flag is almost impossible. </div></div>
</div></blockquote><div><br></div><div>But hold on, the latest proposal has no such flag. We have an *internal* flag for the CC1 layer merely to factor the logic that deals with platforms and shells and other such oddities into the driver. Users will never see or use this flag.</div>
<div><br></div><div>Also, PWD is a useful thing to base the working directory on for many platforms. Mac, Linux, BSD, etc. I think Nick's latest patch is very clean and minimal. The Frontend has a clear narrow and explicit interface with no system knowledge (it uses a flag, but an internal one). The Driver automatically sets that flag appropriately based on the user's system, no flags or other changes necessary.</div>
</div>