Skip to content

rustc: With proc macros disabled, instrument functions do not get Ctrl-click and other RA goodness #12669

@RalfJung

Description

@RalfJung

With the following in my settings

    "rust-analyzer.procMacro.enable": false,
    "rust-analyzer.cargo.buildScripts.enable": false,

when working on the rustc repo, when I go to a function that has an instrument attribute (e.g. fn operand_projection), inside that function, RA does not seem to exist -- no types on hover, no Ctrl-click, no inlay hints, nothing.

Enabling proc macros and build scripts fixes that, but I was told this is supposed to work even without proc macros being enabled -- RA could just assume the attribute macro is the identity.

rust-analyzer version: rust-analyzer version: 0.0.0 (b74e96f 2022-06-26)

rustc version: rustc bootstrapping

relevant settings:

{
    "rust-analyzer.checkOnSave.overrideCommand": [
        "python3",
        "x.py",
        "check",
        "--json-output",
        "library/std",
        "compiler/rustc",
    ],
    "rust-analyzer.rustfmt.overrideCommand": [
        "./build/x86_64-unknown-linux-gnu/stage0/bin/rustfmt",
        "--edition=2021"
    ],
    // This also affects proc macros
    "rust-analyzer.cargo.buildScripts.overrideCommand": [
        "cargo",
        "check",
        "-p",
        "rustc_driver",
        "--message-format=json"
    ],
    "rust-analyzer.procMacro.enable": false,
    "rust-analyzer.cargo.buildScripts.enable": false,
    "rust-analyzer.rustc.source": "./Cargo.toml",
}

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions