On Friday, 13 April 2018 at 18:04:38 UTC, Jonathan Marler wrote:
On Friday, 13 April 2018 at 10:47:18 UTC, Rene Zwanenburg wrote:
On Friday, 13 April 2018 at 05:31:25 UTC, Jesse Phillips wrote:


One thought I has was that we could define a special symbol that basically encodes the configuration that was used to compile a module. So when you import a precompiled module, you can insert a dependency on that special symbol based on the configuration you interpreted the imported module with with. So if a module is compiled and imported with a different configuration, you'll get a linker error.

If we take the previous example with main and foo.

This is awesome, that would be huge improvement over C/C++ as e.g. in C there is 0 ways to know if the file was compiled with same “version defines” as yours.

But... Could it be that library has versions for implementation details that user code shouldn’t even see. Basically you build the same thing with 2 different backends.


Reply via email to