<div dir="ltr"><div class="gmail_quote"><div dir="ltr">On Fri, Sep 7, 2018 at 9:16 PM Tom Honermann <<a href="mailto:tom@honermann.net">tom@honermann.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 09/07/2018 06:38 PM, Loïc Joly wrote:<br>
><br>
> For closed-source library, it may not even be an option, but a <br>
> requirement. And I expect some of those library writers might be very <br>
> happy if they could avoid delivering headers, but only a collection of <br>
> pre-compiled module interfaces for the compilers they support. <br>
<br>
This is what I fear. If library providers were to do that, tools that <br>
are unable to consume the provided module artifacts would be unable to <br>
parse any source code that has a module interface dependency on those <br>
libraries. Library providers that do this are not just restricting what <br>
compilers their customers can use, they are restricting what tools their <br>
customers can use on the customer's own code (at least the subset of it <br>
that has a module interface dependency on the library). I would <br>
consider this a pretty user hostile thing to do. I think we should make <br>
it as easy as possible for library providers to enable their modular <br>
library to work with as wide a range of tools as possible.<br></blockquote><div><br></div><div>Such library providers tend to be perfectly happy to only support certain tools for the libraries they distribute. Yes, it does restrict what users can do. But that's not usually a problem for their audience. The common case is where it's a closed platform with a single set of, usually proprietary, tools for it. For example in console game development.</div><div><br></div></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_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>