Hi Adrian, Le 22/01/2018 à 16:54, John Paul Adrian Glaubitz a écrit :
On 01/22/2018 04:47 PM, Dominique Leuenberger / DimStar wrote:
But then, new warnings/errors in newer compiler versions is not unique to rust: gcc does that too :) (less common in 'minor version releases' though)
Exactly. The difference is that gcc brings such changes in major releases, not in a new minor release after six weeks. And in the case of gcc it's usually only a new warning that was introduced that you could even turn off in the worst case.
...that is, until you end up on a codebase which: * Has -Werror hardcoded deep into its build system. * Relies on code which does not follow the C/++ standard to get compiled by accident. * Relies on undefined behaviour, or another codegen characteristic that is considered an unimportant detail by GCC's optimizer. * Uses compiler version detection macros which have not been adapted to the new GCC release. * Causes an ICE in that specific release of GCC, which was introduced by accident in what was supposed to be a simple bugfix. Relying on UB especially happens more often than one would think, and is basically the kernel of truth behind the old "-O3 breaks code" meme. No matter which way one looks at it, compiler updates are unfortunately always a bit of a risky business from a Linux distribution maintainer's point of view.
The problem with Rust that I ran into was that a certain keyword was no longer supported. So, they actually changed the language spec - in a minor release :O.
If that happened to a stable Rust feature, again, this is a major bug, and you should report it. Which keyword was that? Cheers, Hadrien -- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org