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.