| Age | Commit message (Collapse) | Author | Lines |
|
Stabilize #![feature(repr_align_enum)] in Rust 1.37.0
On an `enum` item, you may now write:
```rust
#[repr(align(X))]
enum Foo {
// ...
}
```
This has equivalent effects to first defining:
```rust
#[repr(align(X))]
struct AlignX<T>(T);
```
and then using `AlignX<Foo>` in `Foo`'s stead.
r? @nagisa
|
|
|
|
|
|
|
|
|
|
|
|
Minimize use of `#![feature(custom_attribute)]`
Some preparations before resurrecting https://github.com/rust-lang/rust/pull/57921.
|
|
remove useless ident() functions in const tests
and replace the useful ones by black_box (with a comment)
r? @oli-obk
|
|
|
|
Unlike other built-in attributes, this attribute accepts any input
|
|
`#[rustc_allocator]`
|
|
|
|
|
|
|
|
by black_box (with a comment)
|
|
Stabilize Cell::from_mut and as_slice_of_cells
FCP: https://github.com/rust-lang/rust/issues/43038#issuecomment-499900463
|
|
|
|
FCP: https://github.com/rust-lang/rust/issues/43038#issuecomment-499900463
|
|
|
|
Emit StorageDead along unwind paths for generators
Completion of the work done in #60840. That PR made a change to implicitly consider a local `StorageDead` after Drop, but that was incorrect for DropAndReplace (see also #61060 which tried to fix this in a different way).
This finally enables the optimization implemented in #60187.
r? @eddyb
cc @Zoxc @cramertj @RalfJung
|
|
|
|
|
|
|
|
Add "type_name" support in emulate_intrinsic()
I did some dumb Git things and deleted my original fork repo semi-accidentally (but probably for the best as I'd messed up the history.)
This is the same issue as #61399, which was obviously auto-closed, to be clear.
|
|
|
|
|
|
|
|
Stabilize reverse_bits feature
FCP done in https://github.com/rust-lang/rust/issues/48763#issuecomment-497349379
Closes #48763
r? @Centril
|
|
Expand dynamic drop tests for cases in #47949
Adds test cases for #47949
|
|
Rollup of 11 pull requests
Successful merges:
- #60897 (error: remove StringError from Debug output)
- #61304 (Speed up Azure CI installing Windows dependencies)
- #61319 (Swap order of `unsafe async fn` to `async unsafe fn`)
- #61342 (Set ellipsis_inclusive_range_patterns lint to warn)
- #61344 (Add regression test for const generics ICE)
- #61359 (Fix links in Deref documentation)
- #61363 (Stabilize iter_nth_back feature)
- #61369 (Fixed lifetime misspelling)
- #61372 (Migrate some books to mdbook version 0.2)
- #61374 (Explicitly suggest 'type_ascription' feature)
- #61382 (Fixed a typo in core::convert::AsMut)
Failed merges:
r? @ghost
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Warn on bare_trait_objects by default
The `bare_trait_objects` lint is set to `warn` by default.
Most ui tests have been updated to use `dyn` to avoid creating noise in stderr files.
r? @Centril
cc #54910
|
|
Add Step::sub_usize
Required for #54054.
I'm aware that the `Step` trait needs a rework, but this still seems like a reasonable addition?
This currently doesn't compile because Chalk contains a type that implement this trait, and this is a breaking change. How can that be fixed?
|
|
|
|
The commit should have changed comments as well.
At the time of writting, it passes the tidy and check tool.
Revisions asked by eddyb :
- Renamed of all the occurences of {visit/super}_mir
- Renamed test structures `CachedMir` to `Cached`
Fixing the missing import on `AggregateKind`
|
|
|
|
Move async/await tests to their own folder
This moves run-pass and ui async/await tests to their own folder `src/test/ui/async-await` and organises some into subfolders. (It does not move rustdoc tests for async/await.)
I also did some drive-by cleaning up of issues/error code tests into their own folders (which already existed). These are in separate commits, so easy to separate out if that's more desirable.
r? @cramertj
|
|
|
|
|
|
FCP completion: https://github.com/rust-lang/rust/issues/28796#issuecomment-439731515
|
|
Ban multi-trait objects via trait aliases
Obviously, multi-trait objects are not normally supported, so they should not be supported via trait aliases.
This has been factored out from the previous PR https://github.com/rust-lang/rust/pull/55994 (see point 1).
r? @Centril
CC @nikomatsakis
------------------
### RELNOTES:
We now allow `dyn Send + fmt::Debug` with equivalent semantics to `dyn fmt::Debug + Send`.
That is, the order of the mentioned traits does not matter wrt. principal/not-principal traits.
This is a small change that might deserve a mention in the blog post because it is a language change but most likely not.
See https://github.com/rust-lang/rust/blob/ce2ee305f9165c037ecddddb5792588a15ff6c37/src/test/ui/traits/wf-trait-object-reverse-order.rs.
// @Centril
|
|
Move arbitrary self types's tests into ui/self
https://github.com/rust-lang/rust/pull/60944#discussion_r285362006
r? @Centril
|
|
|
|
stabilize core parts of MaybeUninit
and deprecate mem::uninitialized in the future (1.40.0). This is part of implementing https://github.com/rust-lang/rfcs/pull/1892.
Also expand the documentation a bit.
This type is currently primarily useful when dealing with partially initialized arrays. In libstd, it is used e.g. in `BTreeMap` (with some unstable APIs that however can all be replaced, less ergonomically, by stable ones). What we stabilize should also be enough for `SmallVec` (Cc @bluss).
Making this useful for structs requires https://github.com/rust-lang/rfcs/pull/2582 or a commitment that references to uninitialized data are not insta-UB.
|
|
future
Also expand the documentation a bit
|