| Age | Commit message (Collapse) | Author | Lines |
|
now does proper parsing of git's output and falls back to
assuming all files are modified if `git` doesn't work.
accepts a closure so extensions can be checked.
|
|
|
|
|
|
Signed-off-by: Hayashi Mikihiro <34ttrweoewiwe28@gmail.com>
|
|
Make `Default` const and add some `const Default` impls
Full list of `impl const Default` types:
- ()
- bool
- char
- std::ascii::Char
- usize
- u8
- u16
- u32
- u64
- u128
- i8
- i16
- i32
- i64
- i128
- f16
- f32
- f64
- f128
- std::marker::PhantomData<T>
- Option<T>
- std::iter::Empty<T>
- std::ptr::Alignment
- &[T]
- &mut [T]
- &str
- &mut str
- String
- Vec<T>
|
|
|
|
|
|
And remove the previous beta/stable/nightly LLD tests.
|
|
move our data structures into a central location
|
|
|
|
|
|
fix: Fix a case where the link type was `None`
|
|
|
|
Full list of `impl const Default` types:
- ()
- bool
- char
- Cell
- std::ascii::Char
- usize
- u8
- u16
- u32
- u64
- u128
- i8
- i16
- i32
- i64
- i128
- f16
- f32
- f64
- f128
- std::marker::PhantomData<T>
- Option<T>
- std::iter::Empty<T>
- std::ptr::Alignment
- &[T]
- &mut [T]
- &str
- &mut str
- String
- Vec<T>
|
|
Rollup of 9 pull requests
Successful merges:
- rust-lang/rust#132469 (Do not suggest borrow that is already there in fully-qualified call)
- rust-lang/rust#143340 (awhile -> a while where appropriate)
- rust-lang/rust#143438 (Fix the link in `rustdoc.md`)
- rust-lang/rust#143539 (Regression tests for repr ICEs)
- rust-lang/rust#143566 (Fix `x86_64-unknown-netbsd` platform support page)
- rust-lang/rust#143572 (Remove unused allow attrs)
- rust-lang/rust#143583 (`loop_match`: fix 'no terminator on block')
- rust-lang/rust#143584 (make `Machine::load_mir` infallible)
- rust-lang/rust#143591 (Fix missing words in future tracking issue)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
fix: Always bump in the parser in `err_and_bump()`
|
|
awhile -> a while where appropriate
|
|
Which caused a panic.
|
|
Allow custom default address spaces and parse `p-` specifications in the datalayout string
Some targets, such as CHERI, use as default an address space different from the "normal" default address space `0` (in the case of CHERI, [200 is used](https://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-877.pdf)). Currently, `rustc` does not allow to specify custom address spaces and does not take into consideration [`p-` specifications in the datalayout string](https://llvm.org/docs/LangRef.html#langref-datalayout).
This patch tries to mitigate these problems by allowing targets to define a custom default address space (while keeping the default value to address space `0`) and adding the code to parse the `p-` specifications in `rustc_abi`. The main changes are that `TargetDataLayout` now uses functions to refer to pointer-related informations, instead of having specific fields for the size and alignment of pointers in the default address space; furthermore, the two `pointer_size` and `pointer_align` fields in `TargetDataLayout` are replaced with an `FxHashMap` that holds info for all the possible address spaces, as parsed by the `p-` specifications.
The potential performance drawbacks of not having ad-hoc fields for the default address space will be tested in this PR's CI run.
r? workingjubilee
|
|
|
|
feat: Include enum variants in world symbols
|
|
interpret: rename StackPopCleanup
The name `StackPopCleanup` stopped making sense a long time ago IMO -- in the common case, it has nothing to do with "cleanup", and everything with where the program should jump next. If we didn't have unwinding this would be just the return block, but given that we do have unwinding I figured maybe "continuation" would be a good name. This comes up in [continuation-passing style](https://en.wikipedia.org/wiki/Continuation-passing_style) and refers to where the program will *continue* when a function is done. So from a PL perspective it is the most fitting term I think -- but it may be too jargony.
r? `@oli-obk` what do you think?
|
|
Subtree update of `rust-analyzer`
r? `@ghost`
|
|
default data address space
|
|
Unwinding != panicking
|
|
|
|
|
|
|
|
Rollup of 9 pull requests
Successful merges:
- rust-lang/rust#143206 (Align attr fixes)
- rust-lang/rust#143236 (Stabilize `mixed_integer_ops_unsigned_sub`)
- rust-lang/rust#143344 (Port `#[path]` to the new attribute parsing infrastructure )
- rust-lang/rust#143359 (Link to 2024 edition page for `!` fallback changes)
- rust-lang/rust#143456 (mbe: Change `unused_macro_rules` to a `DenseBitSet`)
- rust-lang/rust#143529 (Renamed retain_mut to retain on LinkedList as mentioned in the ACP)
- rust-lang/rust#143535 (Remove duplicate word)
- rust-lang/rust#143544 (compiler: rename BareFn to FnPtr)
- rust-lang/rust#143552 (lib: more eagerly return `self.len()` from `ceil_char_boundary`)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
compiler: rename BareFn to FnPtr
At some point "BareFn" was the chosen name for a "bare" function, without the niceties of `~fn`, `&fn`, or a few other ways of writing a function type. However, at some point the syntax for a "bare function" and any other function diverged even more. We started calling them what they are: function pointers, denoted by their own syntax.
However, we never changed the *internal* name for these, as this divergence was very gradual. Personally, I have repeatedly searched for "FnPtr" and gotten confused until I find the name is BareFn, only to forget this until the next time, since I don't routinely interact with the higher-level AST and HIR. But even tools that interact with these internal types only touch on them in a few places, making a migration easy enough. Let's use a more intuitive and obvious name, as this 12+ year old name has little to do with current Rust.
|
|
Specialize sleep_until implementation for unix (except mac)
related tracking issue: https://github.com/rust-lang/rust/issues/113752
Supersedes https://github.com/rust-lang/rust/pull/118480 for the reasons see: https://github.com/rust-lang/rust/issues/113752#issuecomment-2902594469
Replaces the generic catch all implementation with target_os specific ones for: linux/netbsd/freebsd/android/solaris/illumos etc. Other platforms like wasi, macos/ios/tvos/watchos and windows will follow in later separate PR's (once this is merged).
|
|
|
|
|
|
Rollup of 4 pull requests
Successful merges:
- rust-lang/rust#143252 (Rewrite empty attribute lint for new attribute parser)
- rust-lang/rust#143492 (Use `object` crate from crates.io to fix windows build error)
- rust-lang/rust#143514 (Organize macro tests a bit more)
- rust-lang/rust#143518 (rustc_builtin_macros: Make sure registered attributes stay sorted)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
The clock_nanosleep support is there to allow code using `sleep_until`
to run under Miri. Therefore the implementation is minimal.
- Only the clocks REALTIME and MONOTONIC are supported. The first is supported simply
because it was trivial to add not because it was needed for sleep_until.
- The only supported flag combinations are no flags or TIMER_ABSTIME only.
If an unsupported flag combination or clock is passed in this throws
unsupported.
|
|
|
|
|
|
r=jdonszelmann
Rewrite empty attribute lint for new attribute parser
cc `@jdonszelmann`
|
|
Weekly `cargo update`
Automation to keep dependencies in `Cargo.lock` current.
r? dep-bumps
The following is the output from `cargo update`:
```txt
compiler & tools dependencies:
Locking 6 packages to latest compatible versions
Adding io-uring v0.7.8
Updating jsonpath-rust v1.0.2 -> v1.0.3
Updating libffi v4.1.0 -> v4.1.1
Updating libffi-sys v3.3.1 -> v3.3.2
Updating tokio v1.45.1 -> v1.46.1
Updating wasm-component-ld v0.5.14 -> v0.5.15
note: pass `--verbose` to see 41 unchanged dependencies behind latest
library dependencies:
Locking 0 packages to latest compatible versions
note: pass `--verbose` to see 4 unchanged dependencies behind latest
rustbook dependencies:
Locking 1 package to latest compatible version
Updating cc v1.2.27 -> v1.2.29
```
|
|
I opted to not include enum variant imports, only under the enum, and to not gate this behind a setting.
|
|
chore: Remove dead field from `InferenceContext`
|
|
|
|
compiletest: print slightly more information on fs::write failure
See [#t-infra > compiletest: panic in dump_output_file: No such file or dire @ 💬](https://rust-lang.zulipchat.com/#narrow/channel/242791-t-infra/topic/compiletest.3A.20panic.20in.20dump_output_file.3A.20No.20such.20file.20or.20dire/near/527294714)
|
|
tidy: use --bless for tidy spellcheck instead of spellcheck:fix
previous behavior was inconsistent with existing extra checks.
unsure if this needs a change tracker entry or a warning for people who try to use the old behavior.
unsure if we should call this `spellcheck:lint` for consistency.
making this consistent is a prerequisite for https://github.com/rust-lang/rust/pull/143398
cc `@nnethercote`
r? `@Kobzol`
|
|
Add AsMut, Borrow and BorrowMut to minicore and famous_defs
|
|
fix: Avoid .unwrap() when running the discover command
|
|
Signed-off-by: Jonathan Brouwer <jonathantbrouwer@gmail.com>
|
|
fix: Fix diverging destructuring assignments
|
|
`hir_ty::match_check` cleanup: remove special handling for box patterns
|
|
compiler & tools dependencies:
Locking 6 packages to latest compatible versions
Adding io-uring v0.7.8
Updating jsonpath-rust v1.0.2 -> v1.0.3
Updating libffi v4.1.0 -> v4.1.1
Updating libffi-sys v3.3.1 -> v3.3.2
Updating tokio v1.45.1 -> v1.46.1
Updating wasm-component-ld v0.5.14 -> v0.5.15
note: pass `--verbose` to see 41 unchanged dependencies behind latest
library dependencies:
Locking 0 packages to latest compatible versions
note: pass `--verbose` to see 4 unchanged dependencies behind latest
rustbook dependencies:
Locking 1 package to latest compatible version
Updating cc v1.2.27 -> v1.2.29
|