Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce macro usage for lints #104863

Merged
merged 9 commits into from
Dec 2, 2022
Merged

Commits on Dec 2, 2022

  1. Eliminate four unnecessary lint macros.

    The lint definitions use macros heavily. This commit merges some of them
    that are split unnecessarily. I find the reduced indirection makes it
    easier to imagine what the generated code will look like.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    33faf01 View commit details
    Browse the repository at this point in the history
  2. Remove -Zno-interleave-lints.

    Because it complicates lint implementation greatly.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    67cfe2c View commit details
    Browse the repository at this point in the history
  3. Remove six macros relating to lint definitions.

    These were enabled by the removal of `-Zno-interleave-lints`.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    99e9c1d View commit details
    Browse the repository at this point in the history
  4. Merge builtins into LateLintPassObjects.

    This avoids calling the `late_lint_{mod_pass,pass_crate}` twice.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    890c5ea View commit details
    Browse the repository at this point in the history
  5. Inline and remove late_lint_mod_pass.

    It has a single call site.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    0e4f55d View commit details
    Browse the repository at this point in the history
  6. Inline and remove late_lint_pass_crate.

    It has a single call site.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    357aee9 View commit details
    Browse the repository at this point in the history
  7. Remove some unnecessary Send bounds.

    Required to get the parallel compiler building again.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    44cb4f7 View commit details
    Browse the repository at this point in the history
  8. Merge builtins into EarlyLintPassObjects.

    This avoids calling `early_lint_node` twice.
    
    Note: one `early_lint_node` call had `!pre_expansion` for the second
    argument and the other had `false`. The new single call just has
    `!pre_expansion`. This results in a reduction of duplicate error
    messages in some `ui-fulldeps` tests. The order of some `ui-fulldeps`
    output also changes, but that doesn't matter.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    a9b02af View commit details
    Browse the repository at this point in the history
  9. Inline and remove early_lint_node.

    It has a single call site.
    nnethercote committed Dec 2, 2022
    Configuration menu
    Copy the full SHA
    406dace View commit details
    Browse the repository at this point in the history