Yes you can get a different result. Compilers are designed to be deterministic, but a build is more than the compiler. Usually the bytes differ but the behavior is identical.
Docker is far from being reproducible!
It works on my machine ≠ reproducible.
But reproducible will make it works on your machine.
Using a compiler does not guarantee you to get byte-perfect output each time, especially not on different machines.
Talk about misleading. The differences are timestamps and metadata, and some compilers have flags to let you zero out timestamps and force it to produce a bit-for-bit identical file every time.
Yes you can get a different result. Compilers are designed to be deterministic, but a build is more than the compiler. Usually the bytes differ but the behavior is identical.
Docker is far from being reproducible!
It works on my machine ≠ reproducible. But reproducible will make it works on your machine.
Using a compiler does not guarantee you to get byte-perfect output each time, especially not on different machines.
Talk about misleading. The differences are timestamps and metadata, and some compilers have flags to let you zero out timestamps and force it to produce a bit-for-bit identical file every time.
https://isotope13.io/compendium/1983/unix-c-compiler-bell-labs-experiment/