about summary refs log tree commit diff
path: root/src/tools/rust-analyzer/crates/intern
AgeCommit message (Collapse)AuthorLines
2025-03-10Fix `path` macro hygieneLukas Wirth-0/+1
2025-03-05Use size_of from the prelude instead of importedThalia Archibald-19/+12
Use `std::mem::{size_of, size_of_val, align_of, align_of_val}` from the prelude instead of importing or qualifying them. These functions were added to all preludes in Rust 1.80.
2025-02-27enable doctestBenjaminBrienen-1/+0
2025-02-17Merge pull request #19127 from ChayimFriedman2/different-generic-argsLukas Wirth-6/+27
feat: Refactor path lowering and serve a new path diagnostic
2025-02-16Refactor path loweringChayim Refael Friedman-6/+27
And add a new diagnostic for non-`Fn` parenthesized generic args. Path lowering started to look like a mess, with each function carrying additional parameters for the diagnostic callback (since paths can occur both in type and in expression/pattern position, and their diagnostic handling is different) and the segment index, for the diagnostics report. So I refactored it from stateless functions on `TyLoweringContext` into stateful struct, `PathLoweringContext`, that tracks the process of lowering a path from resolution til assoc types selection.
2025-02-10Merge from rust-lang/rustLaurențiu Nicola-0/+1
2025-02-04Merge pull request #19084 from Veykril/push-muworpzpzqupLukas Wirth-0/+1
Split cache priming into distinct phases
2025-02-04Expose symbol of `CrateName`Lukas Wirth-0/+1
2025-02-03Fix some mir eval/loweringsLukas Wirth-0/+1
2025-01-31Insert null checks for pointer dereferences when debug assertions are enabledBastian Kersting-0/+1
Similar to how the alignment is already checked, this adds a check for null pointer dereferences in debug mode. It is implemented similarly to the alignment check as a MirPass. This is related to a 2025H1 project goal for better UB checks in debug mode: https://github.com/rust-lang/rust-project-goals/pull/177.
2025-01-26Support RFC 2396Chayim Refael Friedman-0/+2
AKA. target_feature 1.1, or non unsafe target_feature.
2025-01-25Use `strict_provenance`Lukas Wirth-31/+7
2025-01-24feat: Implement `arbitrary-self-types`Shoyu Vanilla-0/+1
2025-01-21Merge pull request #18986 from Veykril/push-zlwvwlowpzqmLukas Wirth-0/+1
Goto `Display::fmt` when invoked on `to_string`
2025-01-21Cleanup `Name` string renderingLukas Wirth-0/+1
2025-01-20Goto `Display::fmt` when invoked on `to_string`Lukas Wirth-0/+1
2025-01-20Bring back goto def redirect for parse -> FromStrLukas Wirth-0/+1
2025-01-20Move dual blanket impl logic from source analyzer to goto_defLukas Wirth-0/+6
2025-01-20Use Semantics::resolve_method_call_as_callable to find implementation1hakusai1-0/+4
2025-01-10Implement `#[rust_analyzer::skip]` for bodiesLukas Wirth-0/+1
2025-01-04Support the new `CoercePointee` deriveChayim Refael Friedman-0/+1
2024-12-12internal: Implement `naked_asm!` builtinLukas Wirth-0/+1
2024-12-06Merge pull request #18594 from ChayimFriedman2/async-closuresLukas Wirth-0/+8
feat: Support `AsyncFnX` traits
2024-12-05Parse lifetime bounds in lifetime param into TypeBoundListLukas Wirth-0/+1
This mainly aids in error recovery but also makes it a bit easier to handle lifetime resolution. While doing so it also came apparent that we were not actually lowering lifetime outlives relationships within lifetime parameter declaration bounds, so this fixes that.
2024-12-04Merge pull request #18595 from markmurphydev/remove_platform_intrinsicLaurențiu Nicola-1/+0
Remove references to platform-intrinsic ABI
2024-12-04Improve soundness a bit by making `TaggedArcPtr::try_as_arc_owned()` unsafeChayim Refael Friedman-13/+17
Since the `ManuallyDrop` it returns can be safely used to consume the `Arc`, which is can cause UB if done incorrectly. See #18499.
2024-12-03Remove references to platform-intrinsic ABIMark Murphy-1/+0
2024-12-03Support `AsyncFnX` traitsChayim Refael Friedman-0/+8
Only in calls, because to support them in bounds we need support from Chalk. However we don't yet report error from bounds anyway, so this is less severe. The returned future is shown in its name within inlay hints instead of as a nicer `impl Future`, but that can wait for another PR.
2024-11-04Support new #[rustc_intrinsic] attribute and fallback bodiesLukas Wirth-1/+5
2024-11-03Allow interpreting consts and statics with interpret function commandLukas Wirth-0/+2
2024-09-25Merge from rust-lang/rustLaurențiu Nicola-0/+1
2024-09-21add `C-cmse-nonsecure-entry` ABIFolkert de Vries-0/+1
2024-09-02chore: fix some commentscuishuang-1/+1
Signed-off-by: cuishuang <imcusg@gmail.com>
2024-08-29feat: Implement object safetyShoyu Vanilla-0/+1
2024-08-27Revert "feat: Implement `module_path` macro"Lukas Wirth-1/+0
2024-08-26Auto merge of #17941 - ChayimFriedman2:pre-closure-to-fn, r=Veykrilbors-0/+2
Preliminary work for #17940 I split the PR as requested, and made small commits.
2024-08-24Provide `Future::Output` and `Iterator` lang itemsChayim Refael Friedman-0/+2
2024-08-21internal: Implement `module_path` macroLukas Wirth-0/+1
2024-08-06Replace `[package.repository] = "…"` of published crates with ↵Vincent Esche-1/+1
`[package.repository.workspace] = true`
2024-08-06Unify package descriptions by adding references to "rust-analyzer"Vincent Esche-1/+1
With the lack of a README on the individually published library crates and the somewhat cryptic `ra_ap_` prefix it is hard to figure out where those crates belong to, so mentioning "rust-analyzer" feels like auseful hint there.
2024-08-06Add repository URL for published crates' missing `[package.repository]` fieldsVincent Esche-0/+1
2024-08-06Replace `"TBD"` with more helpful desciptions in published crates' ↵Vincent Esche-1/+1
`[package.description]` fields
2024-07-25Fix incorrect handling of cfg'd varargsLukas Wirth-0/+1
2024-07-17Support rustc_skip_during_method_dispatchLukas Wirth-0/+3
2024-07-16More symbol usageLukas Wirth-11/+80
2024-07-16Use symbol in cfgLukas Wirth-13/+24
2024-07-16Switch token trees to use SymbolsLukas Wirth-0/+50
2024-07-15Fix stable iteration ordering for `Map<Name, ...>` usagesLukas Wirth-0/+5
2024-07-14Use statics + clone instead of const until const can access staticsLukas Wirth-83/+82
2024-07-12Fix cloning Symbols not increasing their ref countLukas Wirth-28/+63