<div dir="ltr">&quot;Most&quot;. <br>But that&#39;s why I said it might be reasonable. Depends how much IBM cares about this for zOS and, in addition, if anyone is using non-unicode encodings for the file names in Japan that we will need to support. JIS doesn&#39;t round trip through unicode cleanly, although there isn&#39;t information loss. For historical reasons there are identical characters with different encodings. </div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 26, 2019 at 10:46 AM Manuel Klimek &lt;<a href="mailto:klimek@google.com">klimek@google.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 26, 2019 at 3:59 PM Steve Downey &lt;<a href="mailto:sdowney@gmail.com" target="_blank">sdowney@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">The compilation db is at least nominally JSON, so the strings are Unicode. The names of files and directories are not.</div></blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>I was under the impression that POSIX  doesn&#39;t specify an encoding, but says the bytes 0x00 and 0x2f (/) are special. Thus, if we want to do unicode file names, it&#39;s pretty much utf-8 that fits, which if I&#39;m not mistaken most OS&#39;es are now using?</div></div></div><div dir="ltr"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"> If you stick to ascii, you won&#39;t notice. But if you transcode a filename to unicode the filesystem might not recognize it anymore. <br><br>This might be a reasonable tradeoff, that you need to have your file names in a unicode encoding, but it&#39;s not the current state of the world. </div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 26, 2019 at 8:52 AM Manuel Klimek &lt;<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 26, 2019 at 2:30 PM Steve Downey &lt;<a href="mailto:sdowney@gmail.com" target="_blank">sdowney@gmail.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">I&#39;m pretty sure compilation DB totally ignores this, and is easy to get invalid json in. Makefile syntax would care somewhat less. </blockquote><div><br></div></div></div><div dir="ltr"><div class="gmail_quote"><div>What specifically do you mean? The encoding or the path?</div></div></div><div dir="ltr"><div class="gmail_quote"><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div><br></div><div>I don&#39;t think it would be the worst thing for these tools to require Unicode without any normalization. You have to be able to fopen, and that means an exact match. I don&#39;t know the state of the world for Windows for utf-8 vs ucs2. Can we reliably get the file open? </div><div><br></div><div>I think the TR can place more requirements than the IS can on file names. <br><div dir="auto"><br><div class="gmail_quote"><div dir="ltr">On Tue, Feb 26, 2019, 04:50 Manuel Klimek &lt;<a href="mailto:klimek@google.com" target="_blank">klimek@google.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Feb 26, 2019 at 4:01 AM Ben Boeckel &lt;<a href="mailto:ben.boeckel@kitware.com" target="_blank">ben.boeckel@kitware.com</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Mon, Feb 25, 2019 at 09:52:34 +0100, Manuel Klimek wrote:<br>
&gt; In the compilation database (<br>
&gt; <a href="https://clang.llvm.org/docs/JSONCompilationDatabase.html" rel="noreferrer" target="_blank">https://clang.llvm.org/docs/JSONCompilationDatabase.html</a>) we specify the<br>
&gt; build dir for each file.<br>
<br>
But that is (generally) output from the build system, not the compiler.<br>
The build system knows because…well, it does. The compiler is just<br>
invoked in a working directory and given no indication of where a &quot;root&quot;<br>
directory is (and I think it might be silly to pass it on the command<br>
line just to have it in this file, but maybe not).</blockquote><div><br></div><div>Can&#39;t the compiler put in the current work directory it&#39;s been called with?  That&#39;s what I&#39;d expect.</div></div></div>
_______________________________________________<br>
Tooling mailing list<br>
<a href="mailto:Tooling@isocpp.open-std.org" target="_blank">Tooling@isocpp.open-std.org</a><br>
<a href="http://www.open-std.org/mailman/listinfo/tooling" rel="noreferrer" target="_blank">http://www.open-std.org/mailman/listinfo/tooling</a><br>
</blockquote></div></div></div>
_______________________________________________<br>
Tooling mailing list<br>
<a href="mailto:Tooling@isocpp.open-std.org" target="_blank">Tooling@isocpp.open-std.org</a><br>
<a href="http://www.open-std.org/mailman/listinfo/tooling" rel="noreferrer" target="_blank">http://www.open-std.org/mailman/listinfo/tooling</a><br>
</blockquote></div></div>
_______________________________________________<br>
Tooling mailing list<br>
<a href="mailto:Tooling@isocpp.open-std.org" target="_blank">Tooling@isocpp.open-std.org</a><br>
<a href="http://www.open-std.org/mailman/listinfo/tooling" rel="noreferrer" target="_blank">http://www.open-std.org/mailman/listinfo/tooling</a><br>
</blockquote></div>
_______________________________________________<br>
Tooling mailing list<br>
<a href="mailto:Tooling@isocpp.open-std.org" target="_blank">Tooling@isocpp.open-std.org</a><br>
<a href="http://www.open-std.org/mailman/listinfo/tooling" rel="noreferrer" target="_blank">http://www.open-std.org/mailman/listinfo/tooling</a><br>
</blockquote></div></div>
_______________________________________________<br>
Tooling mailing list<br>
<a href="mailto:Tooling@isocpp.open-std.org" target="_blank">Tooling@isocpp.open-std.org</a><br>
<a href="http://www.open-std.org/mailman/listinfo/tooling" rel="noreferrer" target="_blank">http://www.open-std.org/mailman/listinfo/tooling</a><br>
</blockquote></div>