Revisions of rust

Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) accepted request 581963 from Neal Gompa's avatar Neal Gompa (Pharaoh_Atem) (revision 25)
- Update to 1.24.0
- Language changes:
  + External `sysv64` ffi is now available. 
    eg. `extern "sysv64" fn foo () {}`
- Compiler changes:
  + rustc now uses 16 codegen units by default for release builds.
    For the fastest builds, utilize `codegen-units=1`.
- Libraries:
  + `str::find::<char>` now uses memchr. This should lead to a 10x
    improvement in performance in the majority of cases.
  + `time::{SystemTime, Instant}` now implement `Hash`.
  + impl `From<bool>` for `AtomicBool`
  + impl `From<{CString, &CStr}>` for `{Arc<CStr>, Rc<CStr>}`
  + impl `From<{OsString, &OsStr}>` for `{Arc<OsStr>, Rc<OsStr>}`
  + impl `From<{PathBuf, &Path}>` for `{Arc<Path>, Rc<Path>}`
  + float::from_bits now just uses transmute. This provides some
    optimisations from LLVM.
  + Copied `AsciiExt` methods onto `char`
  + Remove `T: Sized` requirement on `ptr::is_null()`
  + impl `From<RecvError>` for `{TryRecvError, RecvTimeoutError}`
  + Optimised `f32::{min, max}` to generate more efficient x86 
    assembly
  + `[u8]::contains` now uses memchr which provides a 3x speed
    improvement
- Compatibility Notes:
  + Floating point types `Debug` impl now always prints a decimal
    point.
  + `Ipv6Addr` now rejects superfluous `::`'s in IPv6 addresses 
    This is in accordance with IETF RFC 4291 ยง2.2.
  + Unwinding will no longer go past FFI boundaries, and will
    instead abort.
  + `Formatter::flags` method is now deprecated. The `sign_plus`, 
    `sign_minus`, `alternate`, and `sign_aware_zero_pad` should be
     used instead.
  + Leading zeros in tuple struct members is now an error
  + `column!()` macro is one-based instead of zero-based
  + `fmt::Arguments` can no longer be shared across threads
  + Access to `#[repr(packed)]` struct fields is now unsafe
  + Cargo sets a different working directory for the compiler
Dominique Leuenberger's avatar Dominique Leuenberger (dimstar_suse) committed (revision 20)
noaggr
Displaying revisions 61 - 80 of 95
openSUSE Build Service is sponsored by