236989 Commits

Author SHA1 Message Date
Chris Denton
46f68ccb8b
Skip test if Unix sockets are unsupported 2023-10-20 18:10:34 +01:00
bors
090df7a8af Auto merge of #11678 - slinkydeveloper:master, r=Alexendoo
Now `declare_interior_mutable_const` and `borrow_interior_mutable_const` respect the `ignore-interior-mutability` configuration entry

Fix #10537

changelog: Now `declare_interior_mutable_const` and `borrow_interior_mutable_const` respect the `ignore-interior-mutability` configuration entry
2023-10-20 16:50:39 +00:00
Tom Tromey
7eee62c9be Use gdb.ValuePrinter tag class
GDB 14 has a "gdb.ValuePrinter" tag class that was introduced to let
GDB evolve the pretty-printer API.  Users of this tag are required to
hide any local attributes or methods.  This patch makes this change to
the Rust pretty-printers.  At present this is just a cleanup,
providing the basis for any future changes.
2023-10-20 10:49:40 -06:00
Tom Tromey
e98beb5aeb Rewrite gdb pretty-printer registration
Currently, the Rust pretty-printers are registered in gdb using the
uninformative name "lookup":

    (gdb) info pretty-printer
    global pretty-printers:
    [...]
    objfile /home/tromey/[...]
      lookup

It's nicer for users if the top-level registration is given a clear
name.  Additionally, gdb lets users individually enable and disable
specific printers, provided they are registered correctly.

This patch implements both these ideas.  Now the output looks like:

    (gdb) info pretty-printer
    global pretty-printers:
    [...]
    objfile /home/tromey/[...]
      rust
	StdArc
	StdBTreeMap
	StdBTreeSet
	StdCell
	StdHashMap
	StdHashSet
	StdNonZeroNumber
	StdOsString
	StdRc
	StdRef
	StdRefCell
	StdRefMut
	StdSlice
	StdStr
	StdString
	StdVec
	StdVecDeque
2023-10-20 10:35:28 -06:00
Esteban Küber
b0d17f35d9 Typo suggestion to change bindings with leading underscore
When encountering a binding that isn't found but has a typo suggestion
for a binding with a leading underscore, suggest changing the binding
definition instead of the use place.

Fix #60164.
2023-10-20 15:58:25 +00:00
Michael Goulet
c3fd4383fb Move some files around 2023-10-20 15:52:57 +00:00
Michael Goulet
5ceda6b016 Adjust imports 2023-10-20 15:52:57 +00:00
Celina G. Val
6e643e12bb
Remove obsolete comment 2023-10-20 08:23:16 -07:00
bors
7db4a89d49 Auto merge of #116966 - clarfonthey:atomic-docs-typo, r=workingjubilee
Fix typo in atomic docs

Maybe rustdoc or tidy should lint hanging backticks like this.
2023-10-20 14:56:08 +00:00
David CARLIER
9a963e8026 std: freebsd build update.
since freebsd 11 had been removed, minimum is now 12.
2023-10-20 14:59:13 +01:00
bors
e230f19e18 Auto merge of #11521 - y21:issue9122, r=llogiq
[`map_identity`]: allow closure with type annotations

Fixes #9122

`.map(|a: u32| a)` can help type inference, so we should probably allow this and not warn about "unnecessary map of the identity function"

changelog: [`map_identity`]: allow closure with type annotations
2023-10-20 13:28:30 +00:00
bors
274455a9d1 Auto merge of #116965 - estebank:issue-65329, r=cjgillot
Move where doc comment meant as comment check

The new place makes more sense and covers more cases beyond individual statements.

```
error: expected one of `.`, `;`, `?`, `else`, or an operator, found doc comment `//!foo
  --> $DIR/doc-comment-in-stmt.rs:25:22
   |
LL |     let y = x.max(1) //!foo
   |                      ^^^^^^ expected one of `.`, `;`, `?`, `else`, or an operator
   |
help: add a space before `!` to write a regular comment
   |
LL |     let y = x.max(1) // !foo
   |                        +
```

Fix #65329.
2023-10-20 13:02:11 +00:00
Miguel Ojeda
35f03b763e Move invalid-llvm-passes test to invalid-compile-flags folder
Nowadays there is an `invalid-compile-flags` folder, thus move this
one there.

Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
2023-10-20 14:59:26 +02:00
bors
f31316f7a9 Auto merge of #116962 - estebank:issue-63835, r=oli-obk
Do not bold main message in `--error-format=short`

Fix #63835.

Before:

<img width="484" alt="Screenshot 2023-10-19 at 3 52 53 PM" src="https://github.com/rust-lang/rust/assets/1606434/9bd6cbd5-a4ce-4cc3-8c5f-60a8d3ad38da">

After:

<img width="492" alt="Screenshot 2023-10-19 at 3 52 32 PM" src="https://github.com/rust-lang/rust/assets/1606434/0cf2417a-08f2-4074-860c-a88a838a4209">
2023-10-20 10:52:24 +00:00
Oli Scherer
eb99a89bd7 Ensure we never accidentally serialize an ErrorGuaranteed 2023-10-20 08:46:30 +00:00
Oli Scherer
fd9ef69adf Avoid a track_errors by bubbling up most errors from check_well_formed 2023-10-20 08:46:27 +00:00
bors
c7f3948028 Auto merge of #116946 - compiler-errors:movability-and-mutability, r=lcnr
Uplift movability and mutability, the simple way

Just make type_ir a dependency of ast. This can be relaxed later if we want to make the dependency less heavy. Part of rust-lang/types-team#124.

r? `@lcnr` or `@jackh726`
2023-10-20 08:19:54 +00:00
bors
c51ce16713 Auto merge of #3131 - RalfJung:rustup, r=RalfJung
Rustup

Also fix josh build (they have a `deny(warnings)` that's causing issues).
2023-10-20 06:08:20 +00:00
Ralf Jung
b824bb1158 ignore deny lints in josh 2023-10-20 08:04:49 +02:00
Ralf Jung
20fe485c57 Merge from rustc 2023-10-20 08:03:38 +02:00
Ralf Jung
464135de78 Preparing for merge from rustc 2023-10-20 08:03:31 +02:00
bors
7849162ace Auto merge of #116899 - compiler-errors:closure-sig-infer, r=lcnr
Add a test showing failing closure signature inference in new solver

Been thinking a bit about how to make this test pass... but we don't actually have any good tests exercising this behavior in the suite.

r? lcnr
2023-10-20 05:55:25 +00:00
ltdk
b9c2d0e4ab Fix typo in atomic docs 2023-10-20 00:57:29 -04:00
bors
029d00c4a3 Auto merge of #116785 - nnethercote:spec-Bytes-read, r=the8472
Specialize `Bytes<R>::next` when `R` is a `BufReader`.

This reduces the runtime for a simple program using `Bytes::next` to iterate through a file from 220ms to 70ms on my Linux box.

r? `@the8472`
2023-10-20 04:01:07 +00:00
Esteban Küber
20de5c762d Move where doc comment meant as comment check
The new place makes more sense and covers more cases beyond individual
statements.

```
error: expected one of `.`, `;`, `?`, `else`, or an operator, found doc comment `//!foo
  --> $DIR/doc-comment-in-stmt.rs:25:22
   |
LL |     let y = x.max(1) //!foo
   |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected one of `.`, `;`, `?`, `else`, or an operator
   |
help: add a space before `!` to write a regular comment
   |
LL |     let y = x.max(1) // !foo
   |                        +
```

Fix #65329.
2023-10-20 02:54:45 +00:00
bors
ae466d2d0a Auto merge of #116838 - gurry:116836-dup-macro-invoc-diag, r=petrochenkov
Fix duplicate labels emitted in `render_multispan_macro_backtrace()`

This PR replaces the `Vec` used to store labels with an `FxIndexSet` in order to eliminate duplicates

Fixes #116836
2023-10-20 02:07:05 +00:00
Celina G. Val
6ed2a76bcc Add stable Instance::body() and RustcInternal trait
The `Instance::body()` returns a monomorphized body.

For that, we had to implement visitor that monomorphize types and
constants. We are also introducing the RustcInternal trait that will
allow us to convert back from Stable to Internal.

Note that this trait is not yet visible for our users as it depends on
Tables. We should probably add a new trait that can be exposed.
2023-10-19 17:12:26 -07:00
bors
5cee4f305a Auto merge of #116875 - nnethercote:rustc_monomorphize, r=wesleywiser
`rustc_monomorphize` cleanups

Just some small improvements I found while looking over this code.

r? `@wesleywiser`
2023-10-20 00:03:47 +00:00
Caio
6379013876 Initiate the inner usage of cfg_match 2023-10-19 20:18:51 -03:00
Esteban Küber
fd49590ee0 Do not bold main message in --error-format=short
Fix #63835.
2023-10-19 22:52:30 +00:00
Nicholas Nethercote
181ce63183 Specialize Bytes<R>::next when R is a BufReader.
This reduces the runtime for a simple program using `Bytes::next` to
iterate through a file from 220ms to 70ms on my Linux box.
2023-10-20 08:52:56 +11:00
bors
4578435e16 Auto merge of #116874 - compiler-errors:elaborator-nits, r=wesleywiser
Some small elaborator nits

Didn't want to fold these into a totally unrelated pr.
2023-10-19 21:42:17 +00:00
Rémy Rakic
c69bd9480a make applied_member_constraints accept an SCC instead of a region 2023-10-19 21:25:12 +00:00
Rémy Rakic
8b76518a28 add non-regression test for issue 116657 2023-10-19 21:11:21 +00:00
Amanieu d'Antras
eeea74785d Update hashbrown to 0.14.2
Fixes #116880
2023-10-19 21:44:23 +01:00
bors
1e71277b2d Auto merge of #3122 - RalfJung:intrptrcast-clean, r=saethlin
intptrcast: remove information about dead allocations

The discussion in https://github.com/rust-lang/miri/pull/3103 convinced me we don't have to keep `int_to_ptr_map` around for dead allocations. But we should not make that depend on the GC, we can just tie it to when the allocation gets freed. That means everything still behaves deterministically, if anything weird happens (but it shouldn't).

r? `@saethlin`
Only the first and last commit contain logic changes, the 2nd commit just moves code around a bit.
2023-10-19 20:37:31 +00:00
Ralf Jung
ecaf828e13 clarify comment 2023-10-19 22:32:42 +02:00
Claes Gill
d7256a6a0d Updated README with expandable table of content. 2023-10-19 22:32:11 +02:00
Ralf Jung
b325f31f66 remove allocations from int_to_ptr_map and exposed when they get freed 2023-10-19 22:26:15 +02:00
Ralf Jung
55ce55d965 switch intptrcast to helper trait pattern like everything else 2023-10-19 22:26:15 +02:00
Ralf Jung
f3863294a8 intptrcast: only find strictly in-bounds pointers when we are not hitting the base address 2023-10-19 22:15:59 +02:00
bors
5d62040fb6 Auto merge of #3130 - RalfJung:rustup, r=RalfJung
Rustup
2023-10-19 19:28:48 +00:00
Ralf Jung
b01c480181 fmt 2023-10-19 21:26:38 +02:00
bors
214b4d91bd Auto merge of #115214 - Urgau:rfc-3127-trim-paths, r=compiler-errors
Implement rustc part of RFC 3127 trim-paths

This PR implements (or at least tries to) [RFC 3127 trim-paths](https://github.com/rust-lang/rust/issues/111540), the rustc part. That is `-Zremap-path-scope` with all of it's components/scopes.

`@rustbot` label: +F-trim-paths
2023-10-19 19:09:29 +00:00
bors
94c4e5c411 Auto merge of #115214 - Urgau:rfc-3127-trim-paths, r=compiler-errors
Implement rustc part of RFC 3127 trim-paths

This PR implements (or at least tries to) [RFC 3127 trim-paths](https://github.com/rust-lang/rust/issues/111540), the rustc part. That is `-Zremap-path-scope` with all of it's components/scopes.

`@rustbot` label: +F-trim-paths
2023-10-19 19:09:29 +00:00
Josh Stone
048e54658a ci: set IS_NOT_LATEST_LLVM for llvm-16 2023-10-19 10:49:38 -07:00
Josh Stone
5f86fe96d8 ci: add a runner for vanilla LLVM 17 2023-10-19 10:47:18 -07:00
bors
e76cb8c498 Auto merge of #116810 - cjgillot:mir-opt-check, r=oli-obk
Add FileCheck annotations to mir-opt tests.

This PR makes compiletest run LLVM `FileCheck` tool on mir-opt tests.

The check is *run by default*, except if disabled using `// skip-filecheck` comment. This ensures that we do not have a silently broken test. For now, the check is only run on the output of `--emit=mir`, ie. on PreCodegen MIR.

I give an example on `reference_prop.rs`.

r? `@oli-obk`
cc `@RalfJung`

Fixes https://github.com/rust-lang/rust/issues/85180
2023-10-19 16:53:52 +00:00
Michael Goulet
e8e9f6a32a Uplift movability and mutability, the simple way 2023-10-19 16:42:58 +00:00
Ralf Jung
d5d8a515ce Merge from rustc 2023-10-19 17:57:38 +02:00