| Age | Commit message (Collapse) | Author | Lines |
|
llvm-wrapper: adapt for LLVM API change
No functional changes intended.
Adapts the wrapper for https://github.com/llvm/llvm-project/commit/bbe8cd13335300958b04db5318c31ff52714f96f.
Found by our experimental rust + llvm @ HEAD CI: https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds/22055#018a6495-8dd9-41df-9381-5e7b0009ce0a/274-575
|
|
Support debuginfo for custom MIR.
|
|
interpret: make MemPlace, Place, Operand types private to the interpreter
Outside the interpreter, only the typed versions should be used.
|
|
improve `AttrTokenStream`
Improve the performance of `AttrTokenStream::to_tokenstream` method
|
|
No functional changes intended.
Adapts the wrapper for https://github.com/llvm/llvm-project/commit/bbe8cd13335300958b04db5318c31ff52714f96f.
Found by our experimental rust + llvm @ HEAD CI: https://buildkite.com/llvm-project/rust-llvm-integrate-prototype/builds/22055#018a6495-8dd9-41df-9381-5e7b0009ce0a/274-575
|
|
Rollup of 5 pull requests
Successful merges:
- #115353 (Emit error instead of ICE when optimized MIR is missing)
- #115488 (Take `&mut Results` in `ResultsVisitor`)
- #115492 (Allow `large_assignments` for Box/Arc/Rc initialization)
- #115519 (Don't ICE on associated type projection without feature gate in new solver)
- #115534 (Expose more information with DefId in smir)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
Expose more information with DefId in smir
Currently `Debug` for `DefId` doesn't provide enough information, this changes so that we get `usize` of the `DefId` and the name of it.
r? `@oli-obk`
|
|
Don't ICE on associated type projection without feature gate in new solver
Self-explanatory, we should avoid ICEs when the feature gate is not enabled. Continue to ICE when the feature gate *is* enabled, though.
Fixes #115500
|
|
Allow `large_assignments` for Box/Arc/Rc initialization
Does the `stop linting in box/arc initialization` task of #83518.
r? `@oli-obk` who is E-mentor.
|
|
Take `&mut Results` in `ResultsVisitor`
This fixes a small oversight from #108293.
|
|
Emit error instead of ICE when optimized MIR is missing
Closes #51388
|
|
read_via_copy: don't prematurely optimize away the read
Always do the read to ensure consistent UB error messages in const-eval/Miri.
r? `@scottmcm`
|
|
Do not require associated types with Self: Sized to uphold bounds when confirming object candidate
RPITITs and associated types that have `Self: Sized` bounds are opted out of the `dyn Trait` well-formedness check that happens during confirmation. This ensures that we can actually *use* `dyn Trait`s that have associated types that, e.g., have GATs and RPITITs and other naughty things as long as those are opted-out of object safety via a `Self: Sized` bound.
Fixes #115464
This seems like a natural part of https://github.com/rust-lang/rust/pull/112319#issuecomment-1592574451, and I don't think needs re-litigation.
r? `@oli-obk`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Don't forget to normalize the translated message
This PR adds a missing call to `normalize_whitespace` after translating an label.
Fixes https://github.com/rust-lang/rust/issues/115498
|
|
Encode DepKind as u16
The derived Encodable/Decodable impls serialize/deserialize as a varint, which results in a lot of code size around the encoding/decoding of these types which isn't justified: The full range of values here is rather small but doesn't quite fit in to a `u8`. Growing _all_ serialized `DepKind` to 2 bytes costs us on average 1% size in the incr comp dep graph, which I plan to recoup in https://github.com/rust-lang/rust/pull/110050 by taking advantage of the unused bits in all the serialized `DepKind`.
r? `@nnethercote`
|
|
|
|
Rollup of 5 pull requests
Successful merges:
- #115279 (RangeFull: Remove parens around .. in documentation snippet)
- #115318 (Reference uplifted clippy lints' rustc name in the release notes)
- #115445 (remove some unused crate deps)
- #115489 (Use std::io::Error::is_interrupted everywhere)
- #115512 (Command::spawn: Fix STARTUPINFOW.cb being initialized with the address of size_of)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
remove some unused crate deps
|
|
Add note on non-exhaustiveness when matching on str and nested non-exhaustive enums
Fixes https://github.com/rust-lang/rust/issues/105479
r? `@Nadrieril`
|
|
|
|
Emit unused doc comment warnings for pat and expr fields
Fixes #115462
|
|
|
|
Don't manually compute param indices when adding implicit `Sized` and `ConstParamHasTy`
We can just use resolve_bound_vars to compute these indices faithfully.
This also makes the code easier to support where clauses on `non_lifetime_binders` (like `where for<T: Debug> ...`, etc, which I've got a [WIP implementation of](https://github.com/rust-lang/rust/compare/master...compiler-errors:rust:non-lifetime-binder-where-clauses)).
r? `@cjgillot`
|
|
add stable provenance
r? `@spastorino`
implements rust-lang/project-stable-mir#22
|
|
Does the `stop linting in box/arc initialization` task of 83518.
|
|
fix the repetitive word
|
|
|
|
|
|
|
|
Fall through when resolving elided assoc const lifetimes
`@QuineDot` makes a good point in https://github.com/rust-lang/rust/issues/115010#issuecomment-1702127634 that we probably should not accept *more* code due to #115011 even though that code will eventually become a forbid-warning in a few versions (https://github.com/rust-lang/rust/issues/115010#issuecomment-1701598067).
Fall through when walking thru the `AnonymousWarnToStatic` (renamed to `AnonymousWarn`) rib so that we can resolve as a fresh lifetime like we did before.
|
|
Rollup of 7 pull requests
Successful merges:
- #114349 (rustc_llvm: Link to `zlib` on dragonfly and solaris)
- #114845 (Add alignment to the NPO guarantee)
- #115427 (kmc-solid: Fix `is_interrupted`)
- #115443 (feat(std): Stabilize 'os_str_bytes' feature)
- #115444 (Create a SMIR visitor)
- #115449 (Const-stabilize `is_ascii`)
- #115456 (Add spastorino on vacation)
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
Create a SMIR visitor
r? ``@spastorino``
Doesn't have tests or examples yet, but I think we could land it and implement it for the rest of the types.
|
|
rustc_llvm: Link to `zlib` on dragonfly and solaris
On native builds `llvm-config` picks up `zlib` and this gets pased into
the rust build tools, but on cross builds `llvm-config` is explicitly
ignored as it contains information for the host system and cannot be
trusted to be accurate for the target system.
Both DragonFly and Solaris contain `zlib` in the base system, so this is
both a safe assumption and required for a successful cross build unless
`zlib` support is disabled in LLVM.
This is more or less in the same vein as rust-lang#75713 and rust-lang#75655.
|
|
confirming object candidate
|
|
|
|
Skip rendering metadata strings from include_str!/include_bytes!
The const rendering code in rustdoc completely ignores consts from expansions, but the compiler was rendering all consts. So some consts (namely those from `include_bytes!`) were rendered then ignored.
Most of the diff here is from moving `print_const_expr` from rustdoc into `rustc_hir_pretty` so that it can be used in rustdoc and when building rmeta files.
|
|
Use `OnceLock` for `SingleCache`
This uses `OnceLock` for `SingleCache` instead of `Lock<Option<T>>` so lookups are lock-free.
r? `@cjgillot`
|
|
remove the repetitive word
Signed-off-by: cui fliter <imcusg@gmail.com>
|
|
|
|
Add comment so pub items are not removed
As suggested in https://github.com/rust-lang/rust/pull/115393, add a comment so someone doesn't clean these up.
|
|
fix version for abi_thiscall to 1.73.0, which was forgotten to change when stabilized and (later) moved to beta
See:
https://github.com/rust-lang/rust/pull/114562#issuecomment-1669424749
https://github.com/rust-lang/rust/pull/115056#issuecomment-1686316608
https://rust-lang.zulipchat.com/#narrow/stream/241545-t-release/topic/1.2E72.2E0/near/387695644
Should be backported to beta too.
|
|
remove unnecessary heap allocation
|