<div dir="ltr"><div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 1:38 PM Rene Rivera <<a href="mailto:grafikrobot@gmail.com">grafikrobot@gmail.com</a>> 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 dir="ltr"><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 3:31 PM Tony V E <<a href="mailto:tvaneerd@gmail.com" target="_blank">tvaneerd@gmail.com</a>> 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>Also, if you give me a function called std::compile(), that compiles code, it seems I can now write a compiler?</div><div><br></div><div>int main(int argc, char ** argv)</div><div>{</div><div> return std::compile(argc, argv);</div><div>}<br></div><div><br></div><div>Wow, that was easy.</div><div>Can the paper explain what I'm misunderstanding? (Or maybe it does explain, but I missed it)</div></div></blockquote><div><br></div><div>That's a correct understanding. And that's the one example I use in my implementation <<a href="https://github.com/bfgroup/std_cpp/blob/master/example/std_cpp.cpp" target="_blank">https://github.com/bfgroup/std_cpp/blob/master/example/std_cpp.cpp</a>>. I do try and explain the goals in the paper. In that it serves a dual purpose. But mainly it's a way to standardize the compiler options.</div></div></div></div></blockquote><div><br></div><div>Right, otherwise you'd have to do:</div></div></div><blockquote style="margin:0 0 0 40px;border:none;padding:0px"><div><div class="gmail_quote"><div><font face="monospace, monospace"><br></font></div></div></div><div><div class="gmail_quote"><div><div><font face="monospace, monospace">int main(int argc, char** argv) {</font></div></div></div></div><div><div class="gmail_quote"><div><div><font face="monospace, monospace"> std::system((std::string("clang ") + argv[1]).c_str());</font></div></div></div></div><div><div class="gmail_quote"><div><div><font face="monospace, monospace"> return 0;</font></div></div></div></div><div><div class="gmail_quote"><div><div><font face="monospace, monospace">}</font></div></div></div></div></blockquote><div dir="ltr"><div class="gmail_quote"><div><br></div><div>;-)</div><div><br></div><div>More seriously, the selection of compiler options you've chosen seem semi-random. It would be useful to have a survey of existing compilers and their options, and some criteria to determine which should be supported here and which shouldn't.</div><div><br></div><div>Further, what's the expectation of the result of calling this function? Can I actually execute any code? How? Can you make sure that you take into account the restrictions various platforms have, such as requiring code authentication. It goes way beyond linkers.</div><div><br></div><div><font face="monospace, monospace">system</font> seems like a precedent for what you suggest, and in my experience <font face="monospace, monospace">system</font> isn't a precedent people want us to repeat.</div><div><br></div><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"><div dir="ltr"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 4:26 PM Tony V E <<a href="mailto:tvaneerd@gmail.com" target="_blank">tvaneerd@gmail.com</a>> 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>Yes, examples that use the function.</div><div><br></div><div>Any proposal for a function should include examples calling that function.</div><div><br></div><div>I see that this isn't a normal function, but it would still help. Maybe even more.<br></div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 4:22 PM Rene Rivera <<a href="mailto:grafikrobot@gmail.com" target="_blank">grafikrobot@gmail.com</a>> 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 dir="ltr">What specific example are you looking for? There are various use cases <<a href="https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_Dxxxx_R0.html#_use_cases" target="_blank">https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_Dxxxx_R0.html#_use_cases</a>> mentioned. Some of those have specific examples. Maybe you mean an example program that uses the function? </div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 3:17 PM Tony V E <<a href="mailto:tvaneerd@gmail.com" target="_blank">tvaneerd@gmail.com</a>> 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>Could you include an example (more than one, actually) in your paper?</div><div><br></div><div>Can (practically) all papers please include examples, everyone?<br></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Sep 17, 2018 at 10:06 AM Rene Rivera <<a href="mailto:grafikrobot@gmail.com" target="_blank">grafikrobot@gmail.com</a>> 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 dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr">This is the second of two papers I would like SG15 to consider for the next meeting.<div><br></div><div><<a href="https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_Dxxxx_R0.html" target="_blank">https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_Dxxxx_R0.html</a>></div><div><br></div><div>This paper is a concrete proposal for one aspect of the Package Ecosystem Plan. It proposes to add an interface for transforming C++ source into usable executable programs. As such it aims to provide a common definition of compiler frontend tool options for transforming source code to translation units and linking those into executable programs.<div><br></div><div>There is also a sample vendor specification to go along with it:</div><div><br></div><div><<a href="https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_vendor_gcc_SDxx.html" target="_blank">https://rawgit.com/bfgroup/std_cpp/master/doc/std_compile_vendor_gcc_SDxx.html</a>></div><div><br></div><div>There is a growing implementation (it grows as I add options to the paper) here:</div><div><br></div><div><<a href="https://github.com/bfgroup/std_cpp" target="_blank">https://github.com/bfgroup/std_cpp</a>></div><div><br></div><div><div>I am looking for feedback, and collaboration, to hone the paper and implementation ahead of the meeting.</div><div><br></div><div>Note: I was hoping to post this with an actual paper number. But Hal hasn't been responding to emails this past week.<br clear="all"><br class="gmail-m_3917912548981761434gmail-m_-9204776073953582864m_-4628571957203238767m_4545035678651248457m_5755813074602041613m_-3749074364096995960gmail-Apple-interchange-newline"></div></div><div><br></div>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail-m_-9204776073953582864m_-4628571957203238767m_4545035678651248457m_5755813074602041613m_-3749074364096995960gmail_signature"><div dir="ltr"><div><div dir="ltr">-- Rene Rivera<br>-- Grafik - Don't Assume Anything<br>-- Robot Dreams - <a href="http://robot-dreams.net/" target="_blank">http://robot-dreams.net</a><br><br></div></div></div></div></div></div></div></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><br clear="all"><br>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail-m_-9204776073953582864m_-4628571957203238767m_4545035678651248457m_5755813074602041613gmail_signature"><div dir="ltr"><div>Be seeing you,<br></div>Tony<br></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 clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail-m_-9204776073953582864m_-4628571957203238767m_4545035678651248457gmail_signature"><div dir="ltr"><div><div dir="ltr">-- Rene Rivera<br>-- Grafik - Don't Assume Anything<br>-- Robot Dreams - <a href="http://robot-dreams.net/" target="_blank">http://robot-dreams.net</a><br><br></div></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><br clear="all"><br>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail-m_-9204776073953582864m_-4628571957203238767gmail_signature"><div dir="ltr"><div>Be seeing you,<br></div>Tony<br></div></div>
</blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail-m_-9204776073953582864gmail_signature"><div dir="ltr"><div>Be seeing you,<br></div>Tony<br></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 clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail-m_3917912548981761434gmail_signature"><div dir="ltr"><div><div dir="ltr">-- Rene Rivera<br>-- Grafik - Don't Assume Anything<br>-- Robot Dreams - <a href="http://robot-dreams.net/" target="_blank">http://robot-dreams.net</a><br><br></div></div></div></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>