| Age | Commit message (Collapse) | Author | Lines |
|
|
|
|
|
|
|
|
|
fix few typos in filecheck annotations
Inspired by https://github.com/rust-lang/rust/pull/123886#discussion_r1597358732
`rg -g '*.rs' '//\s+?[\w-]+(-[\w]+):' -r '$1' -oNI | sort -u`
Should https://llvm.org/docs/CommandGuide/FileCheck.html#cmdoption-FileCheck-ignore-case be used for case-insensetive match for filecheck?
|
|
Weekly `cargo update`
Automation to keep dependencies in `Cargo.lock` current.
The following is the output from `cargo update`:
```txt
Locking 77 packages to latest compatible versions
Updating allocator-api2 v0.2.16 -> v0.2.18
Updating anstream v0.6.13 -> v0.6.14
Updating anstyle v1.0.6 -> v1.0.7
Updating anstyle-lossy v1.1.0 -> v1.1.1
Updating anstyle-parse v0.2.3 -> v0.2.4
Updating anstyle-query v1.0.2 -> v1.0.3
Updating anstyle-svg v0.1.3 -> v0.1.4
Updating anstyle-wincon v3.0.2 -> v3.0.3
Updating anyhow v1.0.81 -> v1.0.83
Updating autocfg v1.2.0 -> v1.3.0
Updating bumpalo v3.15.4 -> v3.16.0
Updating bytecount v0.6.7 -> v0.6.8
Updating clap_complete v4.5.1 -> v4.5.2
Updating color-print v0.3.5 -> v0.3.6
Updating color-print-proc-macro v0.3.5 -> v0.3.6
Updating colorchoice v1.0.0 -> v1.0.1
Updating dissimilar v1.0.7 -> v1.0.9
Updating either v1.10.0 -> v1.11.0
Updating encoding_rs v0.8.33 -> v0.8.34
Updating errno v0.3.8 -> v0.3.9
Updating fastrand v2.0.2 -> v2.1.0
Updating flate2 v1.0.28 -> v1.0.30
Updating fluent-bundle v0.15.2 -> v0.15.3
Updating fluent-syntax v0.11.0 -> v0.11.1
Updating getrandom v0.2.13 -> v0.2.14 (latest: v0.2.15)
Updating hashbrown v0.14.3 -> v0.14.5
Updating intl-memoizer v0.5.1 -> v0.5.2
Adding is_terminal_polyfill v1.70.0
Updating jobserver v0.1.28 -> v0.1.31
Updating lock_api v0.4.11 -> v0.4.12
Updating num-traits v0.2.18 -> v0.2.19
Removing packed_simd v0.3.9
Updating parking_lot v0.12.1 -> v0.12.2
Updating parking_lot_core v0.9.9 -> v0.9.10
Updating pest v2.7.9 -> v2.7.10
Updating pest_derive v2.7.9 -> v2.7.10
Updating pest_generator v2.7.9 -> v2.7.10
Updating pest_meta v2.7.9 -> v2.7.10
Updating proc-macro2 v1.0.79 -> v1.0.82
Updating pulldown-cmark v0.10.2 -> v0.10.3
Updating pulldown-cmark-escape v0.10.0 -> v0.10.1
Updating quote v1.0.35 -> v1.0.36
Adding redox_syscall v0.5.1
Updating rustc-demangle v0.1.23 -> v0.1.24
Updating rustix v0.38.32 -> v0.38.34
Updating rustversion v1.0.15 -> v1.0.16
Updating ryu v1.0.17 -> v1.0.18
Updating security-framework v2.10.0 -> v2.11.0
Updating security-framework-sys v2.10.0 -> v2.11.0
Updating self_cell v1.0.3 -> v1.0.4
Updating semver v1.0.22 -> v1.0.23
Updating serde v1.0.197 -> v1.0.201
Updating serde_derive v1.0.197 -> v1.0.201
Updating serde_json v1.0.115 -> v1.0.117
Updating socket2 v0.5.6 -> v0.5.7
Updating syn v2.0.58 -> v2.0.62
Updating sysinfo v0.30.8 -> v0.30.12
Updating thiserror v1.0.58 -> v1.0.60
Updating thiserror-impl v1.0.58 -> v1.0.60
Updating tokio-util v0.7.10 -> v0.7.11
Updating type-map v0.4.0 -> v0.5.0
Updating unic-langid v0.9.4 -> v0.9.5
Updating unic-langid-impl v0.9.4 -> v0.9.5
Updating unic-langid-macros v0.9.4 -> v0.9.5
Updating unic-langid-macros-impl v0.9.4 -> v0.9.5
Updating unicode-width v0.1.11 -> v0.1.12
Updating winapi-util v0.1.6 -> v0.1.8
Updating windows-targets v0.52.4 -> v0.52.5
Updating windows_aarch64_gnullvm v0.52.4 -> v0.52.5
Updating windows_aarch64_msvc v0.52.4 -> v0.52.5
Updating windows_i686_gnu v0.52.4 -> v0.52.5
Adding windows_i686_gnullvm v0.52.5
Updating windows_i686_msvc v0.52.4 -> v0.52.5
Updating windows_x86_64_gnu v0.52.4 -> v0.52.5
Updating windows_x86_64_gnullvm v0.52.4 -> v0.52.5
Updating windows_x86_64_msvc v0.52.4 -> v0.52.5
Updating zerocopy v0.7.32 -> v0.7.34
Updating zerocopy-derive v0.7.32 -> v0.7.34
note: pass `--verbose` to see 94 unchanged dependencies behind latest
```
|
|
|
|
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- #124928 (Stabilize `byte_slice_trim_ascii` for `&[u8]`/`&str`)
- #124954 (Document proper usage of `fmt::Error` and `fmt()`'s `Result`.)
- #124969 (check if `x test tests` missing any test directory)
- #124978 (Handle Deref expressions in invalid_reference_casting)
- #125005 (Miri subtree update)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Miri subtree update
r? `@ghost`
|
|
Handle Deref expressions in invalid_reference_casting
Similar to https://github.com/rust-lang/rust/pull/124908
See https://github.com/rust-lang/rust/issues/124951 for context; this PR fixes the last of the known false postiive cases with this lint that we encounter in Crater.
|
|
check if `x test tests` missing any test directory
Add a unit test to ensure we don't skip any test directories for `x test tests` in the future.
|
|
Document proper usage of `fmt::Error` and `fmt()`'s `Result`.
I've seen several newcomers wonder why `fmt::Error` doesn't have any error detail information, or propose to return it in response to an error condition found inside a `impl fmt::Display for MyType`.
That is incorrect, per [a lone paragraph of the `fmt` module's documentation](https://doc.rust-lang.org/1.78.0/std/fmt/index.html#formatting-traits). However, users looking to implement a formatting trait won't necessarily look there. Therefore, let's add the critical information (that formatting per se is infallible) to all the involved items: every `fmt()` method, and `fmt::Error`.
This PR is not intended to make any novel claims about `fmt`; only to repeat an existing one in places where it will be more visible.
|
|
Stabilize `byte_slice_trim_ascii` for `&[u8]`/`&str`
Remove feature from documentation examples
Update intra-doc link for `u8::is_ascii_whitespace` on `&[u8]` functions
Closes #94035
FCP has successfully completed https://github.com/rust-lang/rust/issues/94035#issuecomment-2102690397
|
|
Match ergonomics 2024: let `&` patterns eat `&mut`
r? `@Nadrieril`
cc https://github.com/rust-lang/rust/issues/123076
`@rustbot` label A-edition-2024 A-patterns
|
|
|
|
alloc: update comments around malloc() alignment
Also separate the C heap shims form the Windows heap shims; their guarantees aren't quite the same.
|
|
|
|
|
|
Refactor Apple `target_abi`
This was bundled together with `Arch`, which complicated a few code paths and meant we had to do more string matching than necessary.
CC `@BlackHoleFox` as you've worked on the Apple target spec before
Related: Is there a reason why `Target`/`TargetOptions` use `StaticCow` for so many things, instead of an enum with defined values (and perhaps a catch-all case for custom target json files)? Tagging `@Nilstrieb,` as you might know?
|
|
Automatic Rustup
|
|
Rollup of 4 pull requests
Successful merges:
- #124766 (std::rand: adding solaris/illumos for getrandom support.)
- #124818 (Update ena to 0.14.3)
- #124991 (Fix typo in ManuallyDrop's documentation)
- #124994 (Add `@saethlin` to some triagebot groups)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Add @saethlin to some triagebot groups
I think this is a reasonable approximation of what I can review, and should encourage people to request me.
r? scottmcm
|
|
Fix typo in ManuallyDrop's documentation
```diff
- /// A wrapper to inhibit compiler from automatically calling `T`’s destructor.
+ /// A wrapper to inhibit the compiler from automatically calling `T`’s destructor.
```
|
|
Update ena to 0.14.3
Includes https://github.com/rust-lang/ena/pull/53, which removes a trivial `Self: Sized` bound that prevents `ena` from building on the new solver.
|
|
std::rand: adding solaris/illumos for getrandom support.
To help solarish support for miri https://https://github.com/rust-lang/miri/issues/3567
|
|
|
|
|
|
Remove feature from documentation examples
Add rustc_const_stable attribute to stabilized functions
Update intra-doc link for `u8::is_ascii_whitespace` on `&[u8]` functions
|
|
Update cargo
7 commits in 0ca60e940821c311c9b25a6423b59ccdbcea218f..4de0094ac78743d2c8ff682489e35c8a7cafe8e4
2024-05-08 01:54:25 +0000 to 2024-05-09 16:09:22 +0000
- Fix docs for unstable script feature (rust-lang/cargo#13893)
- Refactor cargo lint tests (rust-lang/cargo#13880)
- test(rustfix): run some tests only on nightly (rust-lang/cargo#13890)
- Old syntax suggestion (rust-lang/cargo#13874)
- docs: clarify dash replacement rule in target name (rust-lang/cargo#13887)
- Add local-only build scripts example in check-cfg docs (rust-lang/cargo#13884)
- docs(changelog): also mention `--message-format=json` (rust-lang/cargo#13882)
r? ghost
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- #124233 (Add `-lmingwex` second time in `mingw_libs`)
- #124318 (ignore generics args in attribute paths)
- #124899 (bootstrap: add comments for the automatic dry run)
- #124904 (reachable computation: extend explanation of what this does, and why)
- #124930 (Make sure we consume a generic arg when checking mistyped turbofish)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
Make sure we consume a generic arg when checking mistyped turbofish
When recovering un-turbofish-ed args in expr position (e.g. `let x = a<T, U>();` in `check_mistyped_turbofish_with_multiple_type_params`, we used `parse_seq_to_before_end` to parse the fake generic args; however, it used `parse_generic_arg` which *optionally* parses a generic arg. If it doesn't end up parsing an arg, it returns `Ok(None)` and consumes no tokens. If we don't find a delimiter after this (`,`), we try parsing *another* element. In this case, we just infinitely loop looking for a subsequent element.
We can fix this by making sure that we either parse a generic arg or error in `parse_seq_to_before_end`'s callback.
Fixes #124897
|
|
reachable computation: extend explanation of what this does, and why
Follow-up to https://github.com/rust-lang/rust/pull/122769. I had the time to think about this some more, in particular in the context of https://github.com/rust-lang/rust/issues/119214, so I felt it was worth extending these comments some more.
I also gave up on the context of "externally reachable" as it is not called that way anywhere else in the compiler.
Cc `@tmiasko` `@saethlin`
|
|
bootstrap: add comments for the automatic dry run
|
|
ignore generics args in attribute paths
Fixes #97006
Fixes #123911
Fixes #123912
This patch ensures that we no longer have to handle invalid generic arguments in attribute paths.
r? `@petrochenkov`
|
|
r=petrochenkov
Add `-lmingwex` second time in `mingw_libs`
Upcoming mingw-w64 releases will contain small math functions refactor which moved implementation around. As a result functions like `lgamma`
now depend on libraries in this order:
`libmingwex.a` -> `libmsvcrt.a` -> `libmingwex.a`.
Fixes #124221
|
|
|
|
Uplift `TraitRef` into `rustc_type_ir`
Emotional rollercoaster
r? lcnr
|
|
Avoid `alloca`s in codegen for simple `mir::Aggregate` statements
The core idea here is to remove the abstraction penalty of simple newtypes in codegen.
Even something simple like constructing a
```rust
#[repr(transparent)] struct Foo(u32);
```
forces an `alloca` to be generated in nightly right now.
Certainly LLVM can optimize that away, but it would be nice if it didn't have to.
Quick example:
```rust
#[repr(transparent)]
pub struct Transparent32(u32);
#[no_mangle]
pub fn make_transparent(x: u32) -> Transparent32 {
let a = Transparent32(x);
a
}
```
on nightly we produce <https://rust.godbolt.org/z/zcvoM79ae>
```llvm
define noundef i32 `@make_transparent(i32` noundef %x) unnamed_addr #0 {
%a = alloca i32, align 4
store i32 %x, ptr %a, align 4
%0 = load i32, ptr %a, align 4, !noundef !3
ret i32 %0
}
```
but after this PR we produce
```llvm
define noundef i32 `@make_transparent(i32` noundef %x) unnamed_addr #0 {
start:
ret i32 %x
}
```
(even before the optimizer runs).
|
|
|
|
|
|
|
|
|
|
Rename some `FulfillmentErrorCode`/`ObligationCauseCode` variants to be less redundant
1. Rename some `FulfillmentErrorCode` variants.
2. Always use `ObligationCauseCode::` to prefix a code, rather than using a glob import and naming them through `traits::`.
3. Rename some `ObligationCauseCode` variants -- I wasn't particularly thorough with thinking of a new names for these, so could workshop them if necessary.
4. Misc stuff from renaming.
r? lcnr
|
|
Co-authored-by: Guillaume Boisseau <Nadrieril@users.noreply.github.com>
|
|
|
|
|