Skip to content

Conversation

lnicola
Copy link
Member

@lnicola lnicola commented Sep 20, 2025

lnicola and others added 30 commits August 9, 2025 04:28
remove duplicate field in Debug impl of ProjectWorkspace
…on_generate_by_indent_token

fix: generate function by indet token
The rustc AST allows both `for<>` binders and `?` polarity
modifiers in trait bounds, but they are parsed in a specific
order and validated for correctness:

  1. `for<>` binder is parsed first.
  2. Polarity modifiers (`?`, `!`) are parsed second.
  3. The parser validates that binders and polarity modifiers
     do not conflict:

```rust
if let Some(binder_span) = binder_span {
    match modifiers.polarity {
        BoundPolarity::Maybe(polarity_span) => {
            // Error: "for<...> binder not allowed with ? polarity"
        }
    }
}
```

This implies:

- `for<> ?Sized` → Valid syntax. Invalid semantics.
- `?for<> Sized` → Invalid syntax.

However, rust-analyzer incorrectly had special-case logic that
allowed `?for<>` as valid syntax. This fix removes that incorrect
special case, making rust-analyzer reject `?for<> Sized` as a
syntax error, matching rustc behavior.

This has caused confusion in other crates (such as syn) which
rely on these files to implement correct syntax evaluation.
**Input**:

```rust
fn main() {
    write!(f, "{2+3}$0")
}
```

**Old output**:

```rust
fn main() {
    write!("{}"$0, 2+3)
}
```

**This PR output**:

```rust
fn main() {
    write!(f, "{}"$0, 2+3)
}
```
parser: fix parsing of trait bound polarity and for-binders
…m-fmtstr-on-write

Fix extract_expressions_from_format_string on write!
This updates the rust-version file to 21a19c2.
Pull recent changes from https://github.com/rust-lang/rust via Josh.

Upstream ref: 21a19c2
Filtered ref: 9a5c1fb93028e1a29a7598ce782efb0c5d7be534

This merge was created using https://github.com/rust-lang/josh-sync.
hotfix: Update flycheck diagnostics generation
feat: Add Config Option to Exclude Locals from Document Symbol Search
fix: Panic while trying to clear old diagnostics while there's nothing
…fault_member_to_resolve_ident_pat

Fix "Implement default members" to resolve IdentPat
…erify

Switch from Chalk to the next trait solver
@rustbot
Copy link
Collaborator

rustbot commented Sep 20, 2025

rust-analyzer is developed in its own repository. If possible, consider making this change to rust-lang/rust-analyzer instead.

cc @rust-lang/rust-analyzer

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue. labels Sep 20, 2025
@rustbot
Copy link
Collaborator

rustbot commented Sep 20, 2025

⚠️ Warning ⚠️

  • There are issue links (such as #123) in the commit messages of the following commits.
    Please move them to the PR description, to avoid spamming the issues with references to the commit, and so this bot can automatically canonicalize them to avoid issues with subtree.

  • This PR is based on an upstream commit that is older than 28 days.

    It's recommended to update your branch according to the rustc-dev-guide.

@lnicola
Copy link
Member Author

lnicola commented Sep 20, 2025

@bors r+ rollup=never

@bors
Copy link
Collaborator

bors commented Sep 20, 2025

📌 Commit 0afd767 has been approved by lnicola

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 20, 2025
@bors
Copy link
Collaborator

bors commented Sep 20, 2025

⌛ Testing commit 0afd767 with merge 9f2ef0f...

@bors
Copy link
Collaborator

bors commented Sep 20, 2025

☀️ Test successful - checks-actions
Approved by: lnicola
Pushing 9f2ef0f to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Sep 20, 2025
@bors bors merged commit 9f2ef0f into rust-lang:master Sep 20, 2025
11 checks passed
@rustbot rustbot added this to the 1.92.0 milestone Sep 20, 2025
Copy link
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing b00998a (parent) -> 9f2ef0f (this PR)

Test differences

Show 2 test diffs

2 doctest diffs were found. These are ignored, as they are noisy.

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 9f2ef0f14d6028c5108643cafa6e2c617834594b --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. dist-various-2: 2407.0s -> 2090.9s (-13.1%)
  2. dist-x86_64-illumos: 5938.8s -> 6463.7s (8.8%)
  3. aarch64-msvc-1: 7031.1s -> 6463.6s (-8.1%)
  4. dist-x86_64-windows-gnullvm: 4870.7s -> 5226.9s (7.3%)
  5. aarch64-gnu: 6150.8s -> 6566.6s (6.8%)
  6. x86_64-gnu-tools: 3259.0s -> 3468.5s (6.4%)
  7. dist-aarch64-msvc: 5683.8s -> 6045.1s (6.4%)
  8. test-various: 4607.2s -> 4330.6s (-6.0%)
  9. dist-powerpc64-linux: 5402.0s -> 5095.2s (-5.7%)
  10. x86_64-msvc-ext1: 7913.8s -> 7466.3s (-5.7%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@lnicola lnicola deleted the sync-from-ra branch September 20, 2025 15:19
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (9f2ef0f): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results (primary 3.0%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
3.0% [3.0%, 3.0%] 1
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 3.0% [3.0%, 3.0%] 1

Cycles

Results (secondary 3.2%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.2% [3.2%, 3.2%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 471.747s -> 471.07s (-0.14%)
Artifact size: 389.94 MiB -> 389.99 MiB (0.01%)

Muscraft pushed a commit to Muscraft/rust that referenced this pull request Sep 24, 2025
`rust-analyzer` subtree update

Subtree update of `rust-analyzer` to rust-lang/rust-analyzer@0c62c01.

Created using https://github.com/rust-lang/josh-sync.

r? `@ghost`
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-rust-analyzer Relevant to the rust-analyzer team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.