Skip to content

Recover missing turbofish for lifetime arguments in expression position - #162749

Open
raushan728 wants to merge 2 commits into
rust-lang:mainfrom
raushan728:issues/162656
Open

raushan728 wants to merge 2 commits into
rust-lang:mainfrom
raushan728:issues/162656

Conversation

@raushan728

@raushan728 raushan728 commented Sep 14, 2026 •

Copy link
Copy Markdown
Contributor

View all comments

Fixes #162656.

Struct<'a> { .. } and f<'_>() were parsed as a < comparison whose RHS is a label, producing a cascade of unrelated errors. parse_path_segment now accepts < followed by a lifetime and >/, in expression paths, emits one "use ::<...>" suggestion, and parses the args normally.Since the recovery is inside the path parser, path.span and chained forms (::new(), .method(), ?) work without AST fix-ups or new Parser state; it is guarded by may_recover().

cc @estebank

@rustbot

rustbot commented Sep 14, 2026

Copy link
Copy Markdown
Collaborator

The parser was modified, potentially altering the grammar of (stable) Rust
which would be a breaking change.

cc @fmease

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Sep 14, 2026
@rustbot

rustbot commented Sep 14, 2026

Copy link
Copy Markdown
Collaborator

r? @chenyukang

rustbot has assigned @chenyukang.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

Why was this reviewer chosen?

The reviewer was selected based on:

  • Owners of files modified in this PR: compiler, parser
  • compiler, parser expanded to 76 candidates
  • Random selection from 18 candidates

@estebank estebank left a comment •

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I need to do a more in-depth review, as I have some mild concerns about increasing the size of the parser, but the results look reasonable so far. I'll look at this again later this week if the assigned reviewer doesn't manage to get the time before then.

View changes since this review

Comment thread compiler/rustc_parse/src/parser/expr.rs Outdated
@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 14, 2026
@rustbot

rustbot commented Sep 14, 2026

Copy link
Copy Markdown
Collaborator

Reminder, once the PR becomes ready for a review, use @rustbot ready.

@rustbot

This comment has been minimized.

Comment thread compiler/rustc_parse/src/parser/expr.rs Outdated
@raushan728
raushan728 requested a review from estebank September 15, 2026 14:36
@raushan728

Copy link
Copy Markdown
Contributor Author

@rustbot ready

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 15, 2026
@rust-bors

This comment has been minimized.

@rustbot

This comment has been minimized.

@rust-bors

This comment has been minimized.

@chenyukang

Copy link
Copy Markdown
Member

r? @estebank since you already take review :)

@rustbot rustbot assigned estebank and unassigned chenyukang Sep 19, 2026
@raushan728 raushan728 changed the title Recover missing turbofish for lifetime arguments in expression position Recover missing turbofish for lifetime arguments in expression position Sep 20, 2026
@rustbot

This comment has been minimized.

@rustbot

This comment has been minimized.

@raushan728 raushan728 left a comment •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rustbot rustbot assigned nnethercote and unassigned estebank Oct 7, 2026
@nnethercote

Copy link
Copy Markdown
Contributor

@bors try @rust-timer queue

@rust-timer

This comment has been minimized.

@rustbot rustbot added the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Oct 8, 2026
@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Oct 8, 2026
Recover missing `turbofish` for `lifetime` arguments in expression position
@nnethercote

Copy link
Copy Markdown
Contributor

It makes me nervous how much code this special case contains and the complexity of the recovery. (This kind of recovery code makes me groan when I'm making changes to the parser.)

Other recovery paths in this function are moved to separate functions, the same should be done for this. For readability and maybe also for performance. (The initial check could still be done inline.)

Is path.span correct after recovery?

How will cases like these be handled?

Struct<'a>::new()
Struct<'a> { x }.method()
Struct<'a> { x }?

Will the code after the Struct<'a> or Struct<'a> { x } be handled correctly, or just cause additional syntax errors?

Overall I'm not convinced this is worth the complexity and risk in this tricky and performance-sensitive part of the parser :(

@nnethercote nnethercote added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Oct 8, 2026
@rust-bors

rust-bors Bot commented Oct 8, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: e67d7c3 (e67d7c34f125b10337dade5936aaa49373783197)
Base parent: ae0fe51 (ae0fe511b15ab760d7e963b13389d1bc2ab42b18)

@rust-timer

This comment has been minimized.

Comment thread compiler/rustc_parse/src/parser/expr.rs Outdated

lhs = match op.node {
AssocOp::Binary(ast_op) => {
if ast_op == ast::BinOpKind::Lt

@fmease fmease Oct 8, 2026 •

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I haven't read this code but if you end up keeping some form of it (cc #162749 (comment)) please move it out of line into a new pub(super) fn recover_from_* function in compiler/rustc_parse/src/parser/expr/diagnostics.rs.

CC my ongoing effort to make the parser maintainable again: #162591.

View changes since the review

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

expr.rs is no longer touched at all. The only inline code is a condition in parse_path_segment (token == Lt is checked first).

@rust-timer

Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (e67d7c3): comparison URL.

Overall result: no relevant changes - no action needed

Benchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up.

@rustbot label: -S-waiting-on-perf -perf-regression

Instruction count

This perf run didn't have relevant results for this metric.

Max RSS (memory usage)

Results (secondary 1.3%)

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)
2.3% [2.0%, 2.7%] 2
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.7% [-0.7%, -0.7%] 1
All ❌✅ (primary) - - 0

Cycles

Results (primary -2.3%, secondary 4.1%)

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)
4.1% [4.1%, 4.1%] 1
Improvements ✅
(primary)
-2.3% [-2.3%, -2.3%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.3% [-2.3%, -2.3%] 1

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 487.56s -> 486.365s (-0.25%)
Artifact size: 406.48 MiB -> 406.50 MiB (0.00%)

@rustbot rustbot removed the S-waiting-on-perf Status: Waiting on a perf run to be completed. label Oct 8, 2026
@rustbot

rustbot commented Oct 9, 2026

Copy link
Copy Markdown
Collaborator

This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed.

Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers.

@raushan728 raushan728 left a comment •

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is path.span correct after recovery?

It is now. The recovery moved from parse_expr_assoc_rest into parse_path_segment for PathStyle::Expr, so the generic args go through the normal parsing path and the path span covers the <'a> part.

How will cases like these be handled?

Struct<'a>::new()
Struct<'a> { x }.method()
Struct<'a> { x }?

Each now produces only the single turbofish error, with no follow up syntax errors. All three are covered in test.

View changes since this review

@raushan728

Copy link
Copy Markdown
Contributor Author

@rustbot ready

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Oct 9, 2026
@raushan728
raushan728 requested a review from fmease October 9, 2026 11:13
@rust-log-analyzer

Copy link
Copy Markdown
Collaborator

The job test-x86_64-gnu-tools failed! Check out the build log: (web) (plain enhanced) (plain)

Click to see the possible cause of the failure (guessed by this bot)
100  177M  100  177M    0     0   259M      0 --:--:-- --:--:-- --:--:--  259M
#12 DONE 1.6s

#13 [ 7/10] RUN unzip -d /usr/bin/ chrome-linux64.zip && rm chrome-linux64.zip
#13 0.036 Archive:  chrome-linux64.zip
#13 0.037   inflating: /usr/bin/chrome-linux64/ABOUT  
#13 0.037   inflating: /usr/bin/chrome-linux64/MEIPreload/manifest.json  
#13 0.037   inflating: /usr/bin/chrome-linux64/MEIPreload/preloaded_data.pb  
#13 0.037   inflating: /usr/bin/chrome-linux64/PrivacySandboxAttestationsPreloaded/manifest.json  
#13 0.037   inflating: /usr/bin/chrome-linux64/PrivacySandboxAttestationsPreloaded/privacy-sandbox-attestations.dat  
#13 0.038   inflating: /usr/bin/chrome-linux64/WidevineCdm/LICENSE  
#13 0.038   inflating: /usr/bin/chrome-linux64/WidevineCdm/_platform_specific/linux_x64/libwidevinecdm.so  
#13 0.132   inflating: /usr/bin/chrome-linux64/WidevineCdm/manifest.json  
#13 0.132   inflating: /usr/bin/chrome-linux64/chrome  
#13 1.872   inflating: /usr/bin/chrome-linux64/chrome-wrapper  
#13 1.872   inflating: /usr/bin/chrome-linux64/chrome_100_percent.pak  
#13 1.876   inflating: /usr/bin/chrome-linux64/chrome_200_percent.pak  
#13 1.882   inflating: /usr/bin/chrome-linux64/chrome_crashpad_handler  
#13 1.895   inflating: /usr/bin/chrome-linux64/chrome_sandbox  
#13 1.895   inflating: /usr/bin/chrome-linux64/deb.deps  
#13 1.895   inflating: /usr/bin/chrome-linux64/icudtl.dat  
#13 1.958   inflating: /usr/bin/chrome-linux64/libEGL.so  
#13 1.960   inflating: /usr/bin/chrome-linux64/libGLESv2.so  
#13 1.999   inflating: /usr/bin/chrome-linux64/libvk_swiftshader.so  
#13 2.028   inflating: /usr/bin/chrome-linux64/libvulkan.so.1  
#13 2.032   inflating: /usr/bin/chrome-linux64/locales/af.pak  
#13 2.036   inflating: /usr/bin/chrome-linux64/locales/af_FEMININE.pak  
#13 2.036   inflating: /usr/bin/chrome-linux64/locales/af_MASCULINE.pak  
#13 2.036   inflating: /usr/bin/chrome-linux64/locales/af_NEUTER.pak  
#13 2.036   inflating: /usr/bin/chrome-linux64/locales/am.pak  
#13 2.042   inflating: /usr/bin/chrome-linux64/locales/am_FEMININE.pak  
#13 2.042   inflating: /usr/bin/chrome-linux64/locales/am_MASCULINE.pak  
#13 2.042   inflating: /usr/bin/chrome-linux64/locales/am_NEUTER.pak  
#13 2.042   inflating: /usr/bin/chrome-linux64/locales/ar.pak  
#13 2.048   inflating: /usr/bin/chrome-linux64/locales/ar_FEMININE.pak  
#13 2.048   inflating: /usr/bin/chrome-linux64/locales/ar_MASCULINE.pak  
#13 2.048   inflating: /usr/bin/chrome-linux64/locales/ar_NEUTER.pak  
#13 2.048   inflating: /usr/bin/chrome-linux64/locales/bg.pak  
#13 2.054   inflating: /usr/bin/chrome-linux64/locales/bg_FEMININE.pak  
#13 2.054   inflating: /usr/bin/chrome-linux64/locales/bg_MASCULINE.pak  
#13 2.054   inflating: /usr/bin/chrome-linux64/locales/bg_NEUTER.pak  
#13 2.054   inflating: /usr/bin/chrome-linux64/locales/bn.pak  
#13 2.061   inflating: /usr/bin/chrome-linux64/locales/bn_FEMININE.pak  
#13 2.062   inflating: /usr/bin/chrome-linux64/locales/bn_MASCULINE.pak  
#13 2.062   inflating: /usr/bin/chrome-linux64/locales/bn_NEUTER.pak  
#13 2.062   inflating: /usr/bin/chrome-linux64/locales/ca.pak  
#13 2.066   inflating: /usr/bin/chrome-linux64/locales/ca_FEMININE.pak  
#13 2.066   inflating: /usr/bin/chrome-linux64/locales/ca_MASCULINE.pak  
#13 2.066   inflating: /usr/bin/chrome-linux64/locales/ca_NEUTER.pak  
#13 2.066   inflating: /usr/bin/chrome-linux64/locales/cs.pak  
#13 2.070   inflating: /usr/bin/chrome-linux64/locales/cs_FEMININE.pak  
#13 2.070   inflating: /usr/bin/chrome-linux64/locales/cs_MASCULINE.pak  
#13 2.070   inflating: /usr/bin/chrome-linux64/locales/cs_NEUTER.pak  
#13 2.070   inflating: /usr/bin/chrome-linux64/locales/da.pak  
#13 2.074   inflating: /usr/bin/chrome-linux64/locales/da_FEMININE.pak  
#13 2.074   inflating: /usr/bin/chrome-linux64/locales/da_MASCULINE.pak  
#13 2.074   inflating: /usr/bin/chrome-linux64/locales/da_NEUTER.pak  
#13 2.074   inflating: /usr/bin/chrome-linux64/locales/de.pak  
#13 2.078   inflating: /usr/bin/chrome-linux64/locales/de_FEMININE.pak  
#13 2.078   inflating: /usr/bin/chrome-linux64/locales/de_MASCULINE.pak  
#13 2.078   inflating: /usr/bin/chrome-linux64/locales/de_NEUTER.pak  
#13 2.079   inflating: /usr/bin/chrome-linux64/locales/el.pak  
#13 2.085   inflating: /usr/bin/chrome-linux64/locales/el_FEMININE.pak  
#13 2.085   inflating: /usr/bin/chrome-linux64/locales/el_MASCULINE.pak  
#13 2.085   inflating: /usr/bin/chrome-linux64/locales/el_NEUTER.pak  
#13 2.085   inflating: /usr/bin/chrome-linux64/locales/en-GB.pak  
#13 2.089   inflating: /usr/bin/chrome-linux64/locales/en-GB_FEMININE.pak  
#13 2.089   inflating: /usr/bin/chrome-linux64/locales/en-GB_MASCULINE.pak  
#13 2.089   inflating: /usr/bin/chrome-linux64/locales/en-GB_NEUTER.pak  
#13 2.089   inflating: /usr/bin/chrome-linux64/locales/en-US.pak  
#13 2.092   inflating: /usr/bin/chrome-linux64/locales/en-US_FEMININE.pak  
#13 2.092   inflating: /usr/bin/chrome-linux64/locales/en-US_MASCULINE.pak  
#13 2.092   inflating: /usr/bin/chrome-linux64/locales/en-US_NEUTER.pak  
#13 2.092   inflating: /usr/bin/chrome-linux64/locales/es-419.pak  
#13 2.096   inflating: /usr/bin/chrome-linux64/locales/es-419_FEMININE.pak  
#13 2.096   inflating: /usr/bin/chrome-linux64/locales/es-419_MASCULINE.pak  
#13 2.097   inflating: /usr/bin/chrome-linux64/locales/es-419_NEUTER.pak  
#13 2.097   inflating: /usr/bin/chrome-linux64/locales/es.pak  
#13 2.101   inflating: /usr/bin/chrome-linux64/locales/es_FEMININE.pak  
#13 2.101   inflating: /usr/bin/chrome-linux64/locales/es_MASCULINE.pak  
#13 2.101   inflating: /usr/bin/chrome-linux64/locales/es_NEUTER.pak  
#13 2.101   inflating: /usr/bin/chrome-linux64/locales/et.pak  
#13 2.105   inflating: /usr/bin/chrome-linux64/locales/et_FEMININE.pak  
#13 2.105   inflating: /usr/bin/chrome-linux64/locales/et_MASCULINE.pak  
#13 2.105   inflating: /usr/bin/chrome-linux64/locales/et_NEUTER.pak  
#13 2.105   inflating: /usr/bin/chrome-linux64/locales/fa.pak  
#13 2.110   inflating: /usr/bin/chrome-linux64/locales/fa_FEMININE.pak  
#13 2.110   inflating: /usr/bin/chrome-linux64/locales/fa_MASCULINE.pak  
#13 2.111   inflating: /usr/bin/chrome-linux64/locales/fa_NEUTER.pak  
#13 2.111   inflating: /usr/bin/chrome-linux64/locales/fi.pak  
#13 2.114   inflating: /usr/bin/chrome-linux64/locales/fi_FEMININE.pak  
#13 2.114   inflating: /usr/bin/chrome-linux64/locales/fi_MASCULINE.pak  
#13 2.115   inflating: /usr/bin/chrome-linux64/locales/fi_NEUTER.pak  
#13 2.115   inflating: /usr/bin/chrome-linux64/locales/fil.pak  
#13 2.119   inflating: /usr/bin/chrome-linux64/locales/fil_FEMININE.pak  
#13 2.119   inflating: /usr/bin/chrome-linux64/locales/fil_MASCULINE.pak  
#13 2.119   inflating: /usr/bin/chrome-linux64/locales/fil_NEUTER.pak  
#13 2.119   inflating: /usr/bin/chrome-linux64/locales/fr.pak  
#13 2.123   inflating: /usr/bin/chrome-linux64/locales/fr_FEMININE.pak  
#13 2.123   inflating: /usr/bin/chrome-linux64/locales/fr_MASCULINE.pak  
#13 2.123   inflating: /usr/bin/chrome-linux64/locales/fr_NEUTER.pak  
#13 2.124   inflating: /usr/bin/chrome-linux64/locales/gu.pak  
#13 2.131   inflating: /usr/bin/chrome-linux64/locales/gu_FEMININE.pak  
#13 2.131   inflating: /usr/bin/chrome-linux64/locales/gu_MASCULINE.pak  
#13 2.131   inflating: /usr/bin/chrome-linux64/locales/gu_NEUTER.pak  
#13 2.131   inflating: /usr/bin/chrome-linux64/locales/he.pak  
#13 2.136   inflating: /usr/bin/chrome-linux64/locales/he_FEMININE.pak  
#13 2.136   inflating: /usr/bin/chrome-linux64/locales/he_MASCULINE.pak  
#13 2.136   inflating: /usr/bin/chrome-linux64/locales/he_NEUTER.pak  
#13 2.136   inflating: /usr/bin/chrome-linux64/locales/hi.pak  
#13 2.144   inflating: /usr/bin/chrome-linux64/locales/hi_FEMININE.pak  
#13 2.144   inflating: /usr/bin/chrome-linux64/locales/hi_MASCULINE.pak  
#13 2.144   inflating: /usr/bin/chrome-linux64/locales/hi_NEUTER.pak  
#13 2.144   inflating: /usr/bin/chrome-linux64/locales/hr.pak  
#13 2.148   inflating: /usr/bin/chrome-linux64/locales/hr_FEMININE.pak  
#13 2.149   inflating: /usr/bin/chrome-linux64/locales/hr_MASCULINE.pak  
#13 2.149   inflating: /usr/bin/chrome-linux64/locales/hr_NEUTER.pak  
#13 2.149   inflating: /usr/bin/chrome-linux64/locales/hu.pak  
#13 2.153   inflating: /usr/bin/chrome-linux64/locales/hu_FEMININE.pak  
#13 2.153   inflating: /usr/bin/chrome-linux64/locales/hu_MASCULINE.pak  
#13 2.153   inflating: /usr/bin/chrome-linux64/locales/hu_NEUTER.pak  
#13 2.153   inflating: /usr/bin/chrome-linux64/locales/id.pak  
#13 2.157   inflating: /usr/bin/chrome-linux64/locales/id_FEMININE.pak  
#13 2.157   inflating: /usr/bin/chrome-linux64/locales/id_MASCULINE.pak  
#13 2.157   inflating: /usr/bin/chrome-linux64/locales/id_NEUTER.pak  
#13 2.157   inflating: /usr/bin/chrome-linux64/locales/it.pak  
#13 2.161   inflating: /usr/bin/chrome-linux64/locales/it_FEMININE.pak  
#13 2.161   inflating: /usr/bin/chrome-linux64/locales/it_MASCULINE.pak  
#13 2.161   inflating: /usr/bin/chrome-linux64/locales/it_NEUTER.pak  
#13 2.161   inflating: /usr/bin/chrome-linux64/locales/ja.pak  
#13 2.166   inflating: /usr/bin/chrome-linux64/locales/ja_FEMININE.pak  
#13 2.166   inflating: /usr/bin/chrome-linux64/locales/ja_MASCULINE.pak  
#13 2.166   inflating: /usr/bin/chrome-linux64/locales/ja_NEUTER.pak  
#13 2.166   inflating: /usr/bin/chrome-linux64/locales/kn.pak  
#13 2.174   inflating: /usr/bin/chrome-linux64/locales/kn_FEMININE.pak  
#13 2.174   inflating: /usr/bin/chrome-linux64/locales/kn_MASCULINE.pak  
#13 2.174   inflating: /usr/bin/chrome-linux64/locales/kn_NEUTER.pak  
#13 2.174   inflating: /usr/bin/chrome-linux64/locales/ko.pak  
#13 2.178   inflating: /usr/bin/chrome-linux64/locales/ko_FEMININE.pak  
#13 2.178   inflating: /usr/bin/chrome-linux64/locales/ko_MASCULINE.pak  
#13 2.178   inflating: /usr/bin/chrome-linux64/locales/ko_NEUTER.pak  
#13 2.178   inflating: /usr/bin/chrome-linux64/locales/lt.pak  
#13 2.182   inflating: /usr/bin/chrome-linux64/locales/lt_FEMININE.pak  
#13 2.183   inflating: /usr/bin/chrome-linux64/locales/lt_MASCULINE.pak  
#13 2.183   inflating: /usr/bin/chrome-linux64/locales/lt_NEUTER.pak  
#13 2.183   inflating: /usr/bin/chrome-linux64/locales/lv.pak  
#13 2.187   inflating: /usr/bin/chrome-linux64/locales/lv_FEMININE.pak  
#13 2.187   inflating: /usr/bin/chrome-linux64/locales/lv_MASCULINE.pak  
#13 2.187   inflating: /usr/bin/chrome-linux64/locales/lv_NEUTER.pak  
#13 2.187   inflating: /usr/bin/chrome-linux64/locales/ml.pak  
#13 2.195   inflating: /usr/bin/chrome-linux64/locales/ml_FEMININE.pak  
#13 2.196   inflating: /usr/bin/chrome-linux64/locales/ml_MASCULINE.pak  
#13 2.196   inflating: /usr/bin/chrome-linux64/locales/ml_NEUTER.pak  
#13 2.196   inflating: /usr/bin/chrome-linux64/locales/mr.pak  
#13 2.203   inflating: /usr/bin/chrome-linux64/locales/mr_FEMININE.pak  
#13 2.203   inflating: /usr/bin/chrome-linux64/locales/mr_MASCULINE.pak  
#13 2.203   inflating: /usr/bin/chrome-linux64/locales/mr_NEUTER.pak  
#13 2.203   inflating: /usr/bin/chrome-linux64/locales/ms.pak  
#13 2.207   inflating: /usr/bin/chrome-linux64/locales/ms_FEMININE.pak  
#13 2.207   inflating: /usr/bin/chrome-linux64/locales/ms_MASCULINE.pak  
#13 2.207   inflating: /usr/bin/chrome-linux64/locales/ms_NEUTER.pak  
#13 2.207   inflating: /usr/bin/chrome-linux64/locales/nb.pak  
#13 2.211   inflating: /usr/bin/chrome-linux64/locales/nb_FEMININE.pak  
#13 2.211   inflating: /usr/bin/chrome-linux64/locales/nb_MASCULINE.pak  
#13 2.211   inflating: /usr/bin/chrome-linux64/locales/nb_NEUTER.pak  
#13 2.211   inflating: /usr/bin/chrome-linux64/locales/nl.pak  
#13 2.215   inflating: /usr/bin/chrome-linux64/locales/nl_FEMININE.pak  
#13 2.215   inflating: /usr/bin/chrome-linux64/locales/nl_MASCULINE.pak  
#13 2.215   inflating: /usr/bin/chrome-linux64/locales/nl_NEUTER.pak  
#13 2.215   inflating: /usr/bin/chrome-linux64/locales/pl.pak  
#13 2.219   inflating: /usr/bin/chrome-linux64/locales/pl_FEMININE.pak  
#13 2.219   inflating: /usr/bin/chrome-linux64/locales/pl_MASCULINE.pak  
#13 2.220   inflating: /usr/bin/chrome-linux64/locales/pl_NEUTER.pak  
#13 2.220   inflating: /usr/bin/chrome-linux64/locales/pt-BR.pak  
#13 2.223   inflating: /usr/bin/chrome-linux64/locales/pt-BR_FEMININE.pak  
#13 2.224   inflating: /usr/bin/chrome-linux64/locales/pt-BR_MASCULINE.pak  
#13 2.224   inflating: /usr/bin/chrome-linux64/locales/pt-BR_NEUTER.pak  
#13 2.224   inflating: /usr/bin/chrome-linux64/locales/pt-PT.pak  
#13 2.228   inflating: /usr/bin/chrome-linux64/locales/pt-PT_FEMININE.pak  
#13 2.228   inflating: /usr/bin/chrome-linux64/locales/pt-PT_MASCULINE.pak  
#13 2.228   inflating: /usr/bin/chrome-linux64/locales/pt-PT_NEUTER.pak  
#13 2.228   inflating: /usr/bin/chrome-linux64/locales/ro.pak  
#13 2.232   inflating: /usr/bin/chrome-linux64/locales/ro_FEMININE.pak  
#13 2.232   inflating: /usr/bin/chrome-linux64/locales/ro_MASCULINE.pak  
#13 2.232   inflating: /usr/bin/chrome-linux64/locales/ro_NEUTER.pak  
#13 2.232   inflating: /usr/bin/chrome-linux64/locales/ru.pak  
#13 2.238   inflating: /usr/bin/chrome-linux64/locales/ru_FEMININE.pak  
#13 2.238   inflating: /usr/bin/chrome-linux64/locales/ru_MASCULINE.pak  
#13 2.238   inflating: /usr/bin/chrome-linux64/locales/ru_NEUTER.pak  
#13 2.238   inflating: /usr/bin/chrome-linux64/locales/sk.pak  
#13 2.243   inflating: /usr/bin/chrome-linux64/locales/sk_FEMININE.pak  
#13 2.243   inflating: /usr/bin/chrome-linux64/locales/sk_MASCULINE.pak  
#13 2.243   inflating: /usr/bin/chrome-linux64/locales/sk_NEUTER.pak  
#13 2.243   inflating: /usr/bin/chrome-linux64/locales/sl.pak  
#13 2.247   inflating: /usr/bin/chrome-linux64/locales/sl_FEMININE.pak  
#13 2.247   inflating: /usr/bin/chrome-linux64/locales/sl_MASCULINE.pak  
#13 2.247   inflating: /usr/bin/chrome-linux64/locales/sl_NEUTER.pak  
#13 2.247   inflating: /usr/bin/chrome-linux64/locales/sr.pak  
#13 2.253   inflating: /usr/bin/chrome-linux64/locales/sr_FEMININE.pak  
#13 2.253   inflating: /usr/bin/chrome-linux64/locales/sr_MASCULINE.pak  
#13 2.253   inflating: /usr/bin/chrome-linux64/locales/sr_NEUTER.pak  
#13 2.253   inflating: /usr/bin/chrome-linux64/locales/sv.pak  
#13 2.257   inflating: /usr/bin/chrome-linux64/locales/sv_FEMININE.pak  
#13 2.257   inflating: /usr/bin/chrome-linux64/locales/sv_MASCULINE.pak  
#13 2.257   inflating: /usr/bin/chrome-linux64/locales/sv_NEUTER.pak  
#13 2.257   inflating: /usr/bin/chrome-linux64/locales/sw.pak  
#13 2.261   inflating: /usr/bin/chrome-linux64/locales/sw_FEMININE.pak  
#13 2.261   inflating: /usr/bin/chrome-linux64/locales/sw_MASCULINE.pak  
#13 2.261   inflating: /usr/bin/chrome-linux64/locales/sw_NEUTER.pak  
#13 2.261   inflating: /usr/bin/chrome-linux64/locales/ta.pak  
#13 2.270   inflating: /usr/bin/chrome-linux64/locales/ta_FEMININE.pak  
#13 2.270   inflating: /usr/bin/chrome-linux64/locales/ta_MASCULINE.pak  
#13 2.270   inflating: /usr/bin/chrome-linux64/locales/ta_NEUTER.pak  
#13 2.270   inflating: /usr/bin/chrome-linux64/locales/te.pak  
#13 2.278   inflating: /usr/bin/chrome-linux64/locales/te_FEMININE.pak  
#13 2.278   inflating: /usr/bin/chrome-linux64/locales/te_MASCULINE.pak  
#13 2.278   inflating: /usr/bin/chrome-linux64/locales/te_NEUTER.pak  
#13 2.278   inflating: /usr/bin/chrome-linux64/locales/th.pak  
#13 2.285   inflating: /usr/bin/chrome-linux64/locales/th_FEMININE.pak  
#13 2.285   inflating: /usr/bin/chrome-linux64/locales/th_MASCULINE.pak  
#13 2.285   inflating: /usr/bin/chrome-linux64/locales/th_NEUTER.pak  
#13 2.285   inflating: /usr/bin/chrome-linux64/locales/tr.pak  
#13 2.289   inflating: /usr/bin/chrome-linux64/locales/tr_FEMININE.pak  
#13 2.289   inflating: /usr/bin/chrome-linux64/locales/tr_MASCULINE.pak  
#13 2.289   inflating: /usr/bin/chrome-linux64/locales/tr_NEUTER.pak  
#13 2.289   inflating: /usr/bin/chrome-linux64/locales/uk.pak  
#13 2.296   inflating: /usr/bin/chrome-linux64/locales/uk_FEMININE.pak  
#13 2.296   inflating: /usr/bin/chrome-linux64/locales/uk_MASCULINE.pak  
#13 2.296   inflating: /usr/bin/chrome-linux64/locales/uk_NEUTER.pak  
#13 2.296   inflating: /usr/bin/chrome-linux64/locales/ur.pak  
#13 2.301   inflating: /usr/bin/chrome-linux64/locales/ur_FEMININE.pak  
#13 2.301   inflating: /usr/bin/chrome-linux64/locales/ur_MASCULINE.pak  
#13 2.302   inflating: /usr/bin/chrome-linux64/locales/ur_NEUTER.pak  
#13 2.302   inflating: /usr/bin/chrome-linux64/locales/vi.pak  
#13 2.306   inflating: /usr/bin/chrome-linux64/locales/vi_FEMININE.pak  
#13 2.306   inflating: /usr/bin/chrome-linux64/locales/vi_MASCULINE.pak  
#13 2.306   inflating: /usr/bin/chrome-linux64/locales/vi_NEUTER.pak  
#13 2.306   inflating: /usr/bin/chrome-linux64/locales/zh-CN.pak  
#13 2.309   inflating: /usr/bin/chrome-linux64/locales/zh-CN_FEMININE.pak  
#13 2.310   inflating: /usr/bin/chrome-linux64/locales/zh-CN_MASCULINE.pak  
#13 2.310   inflating: /usr/bin/chrome-linux64/locales/zh-CN_NEUTER.pak  
#13 2.310   inflating: /usr/bin/chrome-linux64/locales/zh-TW.pak  
#13 2.313   inflating: /usr/bin/chrome-linux64/locales/zh-TW_FEMININE.pak  
#13 2.313   inflating: /usr/bin/chrome-linux64/locales/zh-TW_MASCULINE.pak  
#13 2.313   inflating: /usr/bin/chrome-linux64/locales/zh-TW_NEUTER.pak  
#13 2.313  extracting: /usr/bin/chrome-linux64/product_logo_48.png  
#13 2.313   inflating: /usr/bin/chrome-linux64/resources.pak  
#13 2.378   inflating: /usr/bin/chrome-linux64/rpm.deps  
#13 2.378   inflating: /usr/bin/chrome-linux64/v8_context_snapshot.bin  
#13 2.382   inflating: /usr/bin/chrome-linux64/vk_swiftshader_icd.json  
#13 2.382    creating: /usr/bin/chrome-linux64/resources/
#13 2.382    creating: /usr/bin/chrome-linux64/resources/inspector_overlay/
#13 2.382   inflating: /usr/bin/chrome-linux64/resources/inspector_overlay/inspector_overlay_resources.grd  
#13 2.382   inflating: /usr/bin/chrome-linux64/resources/inspector_overlay/main.js  
#13 2.382    creating: /usr/bin/chrome-linux64/resources/accessibility/
#13 2.383    creating: /usr/bin/chrome-linux64/resources/accessibility/reading_mode_gdocs_helper/
#13 2.383   inflating: /usr/bin/chrome-linux64/resources/accessibility/reading_mode_gdocs_helper/content.js  
#13 2.383   inflating: /usr/bin/chrome-linux64/resources/accessibility/reading_mode_gdocs_helper/gdocs_script.js  
#13 2.383   inflating: /usr/bin/chrome-linux64/resources/accessibility/reading_mode_gdocs_helper_manifest.json  
#13 2.383    creating: /usr/bin/chrome-linux64/hyphen-data/
#13 2.383   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-tk.hyb  
#13 2.383   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-de-1901.hyb  
#13 2.384   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-de-1996.hyb  
#13 2.385   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-mul-ethi.hyb  
#13 2.385   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-es.hyb  
#13 2.385   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-hi.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-cu.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-as.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-ta.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-pa.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-el.hyb  
#13 2.386   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-te.hyb  
#13 2.387   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-und-ethi.hyb  
#13 2.387   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-de-ch-1901.hyb  
#13 2.388   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-bg.hyb  
#13 2.388   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-gu.hyb  
#13 2.388   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-et.hyb  
#13 2.388   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-cs.hyb  
#13 2.389   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-nl.hyb  
#13 2.389   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-ru.hyb  
#13 2.390   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-hy.hyb  
#13 2.390   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-uk.hyb  
#13 2.390   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-eu.hyb  
#13 2.390   inflating: /usr/bin/chrome-linux64/hyphen-data/manifest.json  
#13 2.390   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-ga.hyb  
#13 2.391   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-sk.hyb  
#13 2.391   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-mr.hyb  
#13 2.391   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-bn.hyb  
#13 2.391   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-nb.hyb  
#13 2.393   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-en-gb.hyb  
#13 2.393   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-or.hyb  
#13 2.393   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-cy.hyb  
#13 2.393   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-hr.hyb  
#13 2.394   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-fr.hyb  
#13 2.394   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-kn.hyb  
#13 2.394   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-mn-cyrl.hyb  
#13 2.394   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-lt.hyb  
#13 2.394   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-en-us.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-ml.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-pt.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-be.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-sl.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-lv.hyb  
#13 2.395   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-sv.hyb  
#13 2.396   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-hu.hyb  
#13 2.399   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-af.hyb  
#13 2.399   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-sq.hyb  
#13 2.399   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-ka.hyb  
#13 2.399   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-it.hyb  
#13 2.400   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-gl.hyb  
#13 2.400   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-da.hyb  
#13 2.400   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-nn.hyb  
#13 2.401   inflating: /usr/bin/chrome-linux64/hyphen-data/hyph-la.hyb  
#13 DONE 4.3s

#14 [ 8/10] COPY scripts/nodejs.sh /scripts/
#14 DONE 0.0s

@raushan728 raushan728 closed this Oct 9, 2026
@rustbot rustbot removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 9, 2026
@raushan728 raushan728 reopened this Oct 9, 2026
@rustbot rustbot added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 9, 2026

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Detect missing turbofish in paths in expression context when written with lifetimes Struct<'a> {}

8 participants