| Age | Commit message (Collapse) | Author | Lines |
|
Streamline `AttrAnnotatedTokenStream`
r? ```@petrochenkov```
|
|
Use `DisplayBuffer` for socket addresses.
Continuation of https://github.com/rust-lang/rust/pull/100625 for socket addresses.
Renames `net::addr` to `net::addr::socket`, `net::ip` to `net::addr::ip` and `net::ip::display_buffer::IpDisplayBuffer` to `net::addr::display_buffer::DisplayBuffer`.
|
|
change rlib format to distinguish native dependencies
Another one method to solve problem mentioned in #99429.
Changed .rlib format, it contains all bundled native libraries as archieves.
At link time rlib is unpacked and native dependencies linked separately.
New behavior hidden under separate_native_rlib_dependencies flag.
|
|
ssa: implement `#[collapse_debuginfo]`
cc #39153 rust-lang/compiler-team#386
Debuginfo line information for macro invocations are collapsed by default - line information are replaced by the line of the outermost expansion site. Using `-Zdebug-macros` disables this behaviour.
When the `collapse_debuginfo` feature is enabled, the default behaviour is reversed so that debuginfo is not collapsed by default. In addition, the `#[collapse_debuginfo]` attribute is available and can be applied to macro definitions which will then have their line information collapsed.
r? rust-lang/wg-debugging
|
|
Rollup of 8 pull requests
Successful merges:
- #100185 (Fix `ReErased` leaking into typeck due to `typeof(...)` recovery)
- #100291 (constify some `CStr` methods)
- #101677 (Add test for #101211)
- #101723 (Impove diagnostic for `.await`ing non-futures)
- #101724 (Allow unauthenticated users to add the `const-hack` label)
- #101731 (rustdoc: improve rustdoc HTML suggestions handling of nested generics)
- #101732 (Feature gate the `rustdoc::missing_doc_code_examples` lint)
- #101735 (rustdoc: fix treatment of backslash-escaped HTML)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
r=GuillaumeGomez
rustdoc: fix treatment of backslash-escaped HTML
Try generating HTML for this markup:
\<a href="https://example.com">example</a>
It will produce text, not HTML, in both rustdoc's real HTML output and in the commonmark reference implementation:
https://spec.commonmark.org/dingus/?text=%5C%3Ca%20href%3D%22https%3A%2F%2Fexample.com%22%3Eexample%3C%2Fa%3E
|
|
r=GuillaumeGomez
Feature gate the `rustdoc::missing_doc_code_examples` lint
Moves the lint from being implicitly active on nightly `rustdoc` to requiring a feature to activate, like other unstable lints.
Uses the new tracking issue https://github.com/rust-lang/rust/issues/101730
|
|
r=GuillaumeGomez
rustdoc: improve rustdoc HTML suggestions handling of nested generics
Based on some poor suggestions produced when stablizing this lint and running it on `manformed-generics.rs` in #101720
|
|
Allow unauthenticated users to add the `const-hack` label
Observed in #101401.
cc ```@oli-obk```
|
|
Impove diagnostic for `.await`ing non-futures
Strip leading whitespace from the span and use a non-verbose suggestion.
fixes #101715
|
|
Add test for #101211
Closes #101211
|
|
constify some `CStr` methods
This PR marks the following public APIs as `const`:
```rust
impl CStr {
// feature(const_cstr_from_bytes)
pub const fn from_bytes_until_nul(bytes: &[u8]) -> Result<&CStr, FromBytesUntilNulError>;
pub const fn from_bytes_with_nul(bytes: &[u8]) -> Result<&Self, FromBytesWithNulError>;
// feature(const_cstr_to_bytes)
pub const fn to_bytes(&self) -> &[u8];
pub const fn to_bytes_with_nul(&self) -> &[u8];
pub const fn to_str(&self) -> Result<&str, str::Utf8Error>;
}
```
r? ```@oli-obk``` (use of `const_eval_select` :P )
cc ```@mina86``` (you've asked for this <3 )
|
|
Fix `ReErased` leaking into typeck due to `typeof(...)` recovery
Fixes #100183
|
|
Try generating HTML for this markup:
\<a href="https://example.com">example</a>
It will produce text, not HTML, in both rustdoc's real HTML output and in
the commonmark reference implementation:
https://spec.commonmark.org/dingus/?text=%5C%3Ca%20href%3D%22https%3A%2F%2Fexample.com%22%3Eexample%3C%2Fa%3E
|
|
Update miri submodule
r? `@ghost`
fixes #101649
|
|
|
|
Based on some poor suggestions produced when stablizing this lint and running
it on `manformed-generics.rs`
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
rustc_error, rustc_private: Switch to stable hash containers
Relates https://github.com/rust-lang/rust/issues/84447
|
|
|
|
|
|
|
|
Rollup of 9 pull requests
Successful merges:
- #100293 (Add inline-llvm option for disabling/enabling LLVM inlining)
- #100767 (Remove manual <[u8]>::escape_ascii)
- #101668 (Suggest pub instead of public for const type item)
- #101671 (Fix naming format of IEEE 754 standard)
- #101676 (Check that the types in return position `impl Trait` in traits are well-formed)
- #101681 (Deny return-position `impl Trait` in traits for object safety)
- #101693 (Update browser UI test 0 10)
- #101701 (Rustdoc-Json: Add tests for trait impls.)
- #101706 (rustdoc: remove no-op `#search`)
Failed merges:
r? `@ghost`
`@rustbot` modify labels: rollup
|
|
|
|
rustdoc: remove no-op `#search`
The margin rule was added in c729e4dca7581fcd060978bcb0d7f98ea4eb6b82 to remove an unnecessary left margin that was present on desktop. This desktop-mode margin was itself removed in 135281ed1525db15edd8ebd092aa10aa40df2386.
The padding rule was added in 135281ed1525db15edd8ebd092aa10aa40df2386 when converting the rule for `#main`, but didn't do anything even then.
|
|
Rustdoc-Json: Add tests for trait impls.
|
|
r=notriddle
Update browser UI test 0 10
The biggest change from this browser-ui-test update is the upgrade of the puppeteer version to `17.1.3` (the latest in short).
I also added the command `click-with-offset` to still allow us to click on the `[-]` part.
cc `@jsha`
r? `@notriddle`
|
|
Deny return-position `impl Trait` in traits for object safety
Fixes #101667
|
|
Check that the types in return position `impl Trait` in traits are well-formed
This effectively duplicates `check_associated_type_bounds`, but that shouldn't be for long, since we're going to remove it once we refactor RPITITs into regular associated items.
Fixes #101663
---
We don't check
```rust
trait Foo {
fn bar() -> impl ?Sized;
}
```
currently, but that's for a different reason, which is that we don't currently check that a trait function's return type is sized (i.e. `fn bar() -> [u8]` also works in a trait).
|
|
Fix naming format of IEEE 754 standard
Currently the documentation of f64::min refers to "IEEE-754 2008" while the documentation of f64::minimum refers to "IEEE 754-2019".
Note that one has the format IEEE,hyphen,number,space,year while the other is IEEE,space,number,hyphen,year. The official IEEE site [1] uses the later format and it is also the one most commonly used throughout the codebase.
Update all comments and - more importantly - documentation to consistently use the official format.
[1] https://standards.ieee.org/ieee/754/4211/
|
|
Suggest pub instead of public for const type item
Fixes #101626
|
|
Remove manual <[u8]>::escape_ascii
`@rustbot` label: +C-cleanup
|
|
Add inline-llvm option for disabling/enabling LLVM inlining
In this PR, a new -Z option `inline-llvm` is added in order to be able to turn on/off LLVM inlining.
The capability of turning on/off inlining in LLVM backend is needed for testing performance implications of using recently enabled inlining in rustc's frontend (with -Z inline-mir=yes option, #91743). It would be interesting to see the performance effect using rustc's frontend inlining only without LLVM inlining enabled. Currently LLVM is still doing inlining no mater what value inline-mir is set to. With the option `inline-llvm` being added in this PR, user can turn off LLVM inlining by using `-Z inline-llvm=no` option (the default of inline-llvm is 'yes', LLVM inlining enabled).
|
|
Fix ICE in opt_suggest_box_span
We were _totally_ mishandling substs and obligations in `opt_suggest_box_span`, so I reworked that function pretty heavily.
Also some drive-by changes, namely removing `ret_type_span`.
Fixes #101465
|
|
Avoid infinite loop in function arguments checking
Fixes #100478
Fixes #101097
|
|
Implement `std::marker::Tuple`
Split out from #99943 (https://github.com/rust-lang/rust/pull/99943#pullrequestreview-1064459183).
Implements part of rust-lang/compiler-team#537
r? `@jackh726`
|
|
|
|
|
|
The padding rule was added in 135281ed1525db15edd8ebd092aa10aa40df2386 when
converting the rule for #main, but didn't do anything even then.
|
|
This rule was added in c729e4dca7581fcd060978bcb0d7f98ea4eb6b82 to remove an
unnecessary left margin that was present on desktop. This desktop-mode margin
was itself removed in 135281ed1525db15edd8ebd092aa10aa40df2386.
|
|
Assert that HIR nodes are not their own parent.
Fixes https://github.com/rust-lang/rust/issues/101505.
Replaces #101513
r? `@petrochenkov` `@nnethercote`
|
|
Check if TCS is a null pointer on SGX
The `EENTER` instruction only checks if the TCS is aligned, not if it zero. Saying the address returned is a `NonNull<u8>` (for which `Tcs` is a type alias) is unsound. As well-behaved runners will not put the TCS at address zero, so the definition of `Tcs` is correct. However, `std` should check the address before casting it to a `NonNull`.
ping `@jethrogb` `@raoulstrackx`
`@rustbot` label I-unsound
|