GetPath() is supposed to have not put a trailing slash in that case.  See the call to rtrim() in GetPath()<br><div class="gmail_quote">On Wed, May 27, 2015 at 3:14 PM Chaoren Lin <<a href="mailto:chaorenl@google.com">chaorenl@google.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">================<br>
Comment at: source/Host/common/FileSpec.cpp:630<br>
@@ +629,3 @@<br>
+        std::string path = GetPath();<br>
+        if (!m_filename && !path.empty())<br>
+            path.push_back(GetPathSeparator());<br>
----------------<br>
What if `path == "/"`?<br>
<br>
================<br>
Comment at: source/Host/common/FileSpec.cpp:844<br>
@@ +843,3 @@<br>
+    {<br>
+        if (m_directory)<br>
+            path.push_back('/');<br>
----------------<br>
What if `m_directory == '/'`? We'd get `//filename`.<br>
<br>
<a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__reviews.llvm.org_D9942&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=MEqT8U_n7oNfuDW5NRbY3ZV384ZquXIYFPWmprwUdKM&m=my09iGq1G6JweDx-662XqeIAeXjQ9y8OCe6h57QvMrg&s=B4VrgDFVNGyEKUsGSaVSvktvsGFKUwTxwfKL6Yan_lY&e=" target="_blank">http://reviews.llvm.org/D9942</a><br>
<br>
EMAIL PREFERENCES<br>
  <a href="https://urldefense.proofpoint.com/v2/url?u=http-3A__reviews.llvm.org_settings_panel_emailpreferences_&d=AwMFaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=MEqT8U_n7oNfuDW5NRbY3ZV384ZquXIYFPWmprwUdKM&m=my09iGq1G6JweDx-662XqeIAeXjQ9y8OCe6h57QvMrg&s=17K-55LeRWTcfNeLukBmeIAIDM_pAfZPM93ZXis1L24&e=" target="_blank">http://reviews.llvm.org/settings/panel/emailpreferences/</a><br>
<br>
<br>
</blockquote></div>