about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)AuthorLines
2024-12-13Rollup merge of #134140 - compiler-errors:unsafe-binders-ast, r=oli-obkMatthias Krüger-5/+79
Add AST support for unsafe binders I'm splitting up #130514 into pieces. It's impossible for me to keep up with a huge PR like that. I'll land type system support for this next, probably w/o MIR lowering, which will come later. r? `@oli-obk` cc `@BoxyUwU` and `@lcnr` who also may want to look at this, though this PR doesn't do too much yet
2024-12-13Rollup merge of #133937 - ↵Matthias Krüger-9/+8
estebank:silence-resolve-errors-from-mod-with-parse-errors, r=davidtwco Keep track of parse errors in `mod`s and don't emit resolve errors for paths involving them When we expand a `mod foo;` and parse `foo.rs`, we now track whether that file had an unrecovered parse error that reached the end of the file. If so, we keep that information around in the HIR and mark its `DefId` in the `Resolver`. When resolving a path like `foo::bar`, we do not emit any errors for "`bar` not found in `foo`", as we know that the parse error might have caused `bar` to not be parsed and accounted for. When this happens in an existing project, every path referencing `foo` would be an irrelevant compile error. Instead, we now skip emitting anything until `foo.rs` is fixed. Tellingly enough, we didn't have any test for errors caused by expansion of `mod`s with parse errors. Fix https://github.com/rust-lang/rust/issues/97734.
2024-12-13Auto merge of #134122 - oli-obk:push-zqnyznxtpnll, r=petrochenkovbors-1/+42
Move impl constness into impl trait header This PR is kind of the opposite of the rejected https://github.com/rust-lang/rust/pull/134114 Instead of moving more things into the `constness` query, we want to keep them where their corresponding hir nodes are lowered. So I gave this a spin for impls, which have an obvious place to be (the impl trait header). And surprisingly it's also a perf improvement (likely just slightly better query & cache usage). The issue was that removing anything from the `constness` query makes it just return `NotConst`, which is wrong. So I had to change it to `bug!` out if used wrongly, and only then remove the impl blocks from the `constness` query. I think this change is good in general, because it makes using `constness` more robust (as can be seen by how few sites that had to be changed, so it was almost solely used specifically for the purpose of asking for functions' constness). The main thing where this change was not great was in clippy, which was using the `constness` query as a general DefId -> constness map. I added a `DefKind` filter in front of that. If it becomes a more common pattern we can always move that helper into rustc.
2024-12-13feat: improve name generation in destructure_tuple_bindingroife-33/+49
2024-12-13Correctly handle comments in attributes in doctests source codeGuillaume Gomez-0/+2
2024-12-13Make dependency_formats an FxIndexMap rather than a list of tuplesbjorn3-3/+2
It is treated as a map already. This is using FxIndexMap rather than UnordMap because the latter doesn't provide an api to pick a single value iff all values are equal, which each_linked_rlib depends on.
2024-12-13Remove registered_lints field from Sessionbjorn3-1/+3
It only exists to pass some information from one part of the driver to another part. We can directly pass this information to the function that needs it to reduce the amount of mutation of the Session.
2024-12-13Bump typosLaurențiu Nicola-11/+16
2024-12-13Merge pull request #18678 from regexident/fix-typosLaurențiu Nicola-6/+6
minor: Fix a few typos
2024-12-13Fix a few typosVincent Esche-6/+6
2024-12-13Merge pull request #18674 from Veykril/push-lrxotqknvxvrLukas Wirth-37/+76
Show expansion errors in expand_macro feature
2024-12-13Merge pull request #18672 from Veykril/push-lurnqpqtzvzqLukas Wirth-41/+15
internal: Do not require a special env var to be set for the proc-macro-srv
2024-12-13Show expansion errors in expand_macro featureLukas Wirth-37/+76
2024-12-13Auto merge of #133899 - scottmcm:strip-mir-debuginfo, r=oli-obkbors-0/+5
We don't need `NonNull::as_ptr` debuginfo In order to stop pessimizing the use of local variables in core, skip debug info for MIR temporaries in tiny (single-BB) functions. For functions as simple as this -- `Pin::new`, etc -- nobody every actually wants debuginfo for them in the first place. They're more like intrinsics than real functions, and stepping over them is good.
2024-12-13Do not require a special env var to be set for the proc-macro-srvLukas Wirth-41/+15
2024-12-13validate `--skip` and `--exclude` pathsonur-ozkan-1/+25
Signed-off-by: onur-ozkan <work@onurozkan.dev>
2024-12-13Merge from rustcThe Miri Cronjob Bot-273/+258
2024-12-13Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2024-12-12Only dist `llvm-objcopy` if llvm tools are enabledJosh Stone-1/+1
2024-12-13Stabilize async closuresMichael Goulet-55/+49
2024-12-12Filter empty lines, comments and delimiters from previous to last multiline ↵Esteban Küber-69/+4
span rendering
2024-12-12Tweak multispan renderingEsteban Küber-117/+38
Consider comments and bare delimiters the same as an "empty line" for purposes of hiding rendered code output of long multispans. This results in more aggressive shortening of rendered output without losing too much context, specially in `*.stderr` tests that have "hidden" comments.
2024-12-12Make BorrowSet/BorrowData fields accessible via public gettersWill Crichton-2/+6
2024-12-12rustdoc-search: fix mismatched path when parent re-exported twiceMichael Howell-0/+8
2024-12-12Update wasi-sdk used to build WASI targetsAlex Crichton-4/+4
Bump to the latest wasi-sdk-25 release which brings in various wasi-libc updates as well as LLVM 19 as the version used to compile wasi-libc.
2024-12-12fix pathMarcoIeni-4/+4
2024-12-12fix pathMarcoIeni-4/+4
2024-12-12Rollup merge of #134214 - klensy:rd-shadow, r=notriddleMatthias Krüger-1/+1
rustdoc: fix self cmp Looks like condition in `filter` currently always `true`, but intended to compare with `fqp` from `if let Some(&(ref fqp, item_type))`?
2024-12-12Rollup merge of #134207 - jieyouxu:revert-134040, r=lqdMatthias Krüger-210/+206
Revert "bootstrap: print{ln}! -> eprint{ln}! (take 2) #134040" Unfortunately, #134040 is proving to have caused more output interleaving problems that are tricky to diagnose and fix, and I think we probably should leave these untouched as bootstrap and compiletest has a bunch of interconnecting parts, and the commands and tools that they exercise do not consistently use stderr/stdout either. This causes hard-to-diagnose output interleaving bugs, which unfortunately degrades contributor experience. This PR reverts two PRs in order to cleanly revert #134040: 1. Revert #134123 which is a fix-forward after #134040. 2. Revert #134040 itself. I don't regret the initial effort `@clubby789,` and thank you for making the attempts, but I think we need to refrain from touching too many of these at once because some of the interleaving are very non-obvious and we don't have test coverage for. r? `@clubby789` cc `@Zalathar`
2024-12-12Rollup merge of #134188 - steven807:master, r=lqdMatthias Krüger-1/+1
Bump Fuchsia try-job: x86_64-fuchsia
2024-12-12add filesMarcoIeni-0/+2
2024-12-12remove echoMarcoIeni-2/+0
2024-12-12refactorMarcoIeni-60/+25
2024-12-12remove echo logsMarcoIeni-6/+0
2024-12-12Merge pull request #18677 from Veykril/push-uumpxklsqpzkLukas Wirth-1/+4
internal: Implement `naked_asm!` builtin
2024-12-13Fix powerpc64 big-endian FreeBSD ABITaiki Endo-1/+1
2024-12-12Fix toolsMichael Goulet-5/+79
2024-12-12internal: Implement `naked_asm!` builtinLukas Wirth-1/+4
2024-12-12Merge pull request #18675 from ShoyuVanilla/issue-18664Lukas Wirth-2/+50
fix: Panic when displaying generic params with defaults, again
2024-12-13fix: Panic when displaying generic params with defaults, againShoyu Vanilla-2/+50
2024-12-12Rename `handle_call` into `infer_id`Guillaume Gomez-4/+4
2024-12-12fix self shadowed self compareklensy-1/+1
2024-12-12Enable "jump to def" feature on patternsGuillaume Gomez-1/+26
2024-12-12Enable "jump to def" feature on prelude variantsGuillaume Gomez-5/+10
2024-12-12Fix typo in error message for invalid castingPhilipp Hofer-1/+1
Corrected the spelling of "defererence" to "dereference" in the error message that informs users about invalid casting requirements.
2024-12-12Merge pull request #18670 from Veykril/push-ylomnylswnxmLukas Wirth-48/+30
internal: Drop proc-macro server support for ~1.66.0 and older toolchains
2024-12-12internal: Drop proc-macro server support for ~1.66.0 and older toolchainsLukas Wirth-48/+30
2024-12-12copy scriptMarcoIeni-0/+2
2024-12-12Reduce the need to set archiver via environment variablesFlorian Bartels-0/+10
2024-12-12Merge pull request #18652 from Giga-Bowser/extract-constantLukas Wirth-306/+1634
feat: Add an assist to extract an expression into a constant