Breaking changes aren't just limited to compilation failures. Behavioral changes to stable functions generally can't be accepted. See the home_dir
issue for an example.
An exception is when a behavior is specified in an RFC (such as IETF specifications for IP addresses). If a behavioral change fixes non-conformance then it can be considered a bug fix. In these cases, @rust-lang/libs
should still be pinged for input.
Look out for changes in existing implementations for stable functions, especially if assertions in test cases have been changed.