diff options
| author | Matthias Krüger <matthias.krueger@famsik.de> | 2022-11-22 00:01:09 +0100 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-11-22 00:01:09 +0100 |
| commit | 589d843bd0ff72fd5a720bce63c2e6baa241550b (patch) | |
| tree | 424891b591ec967fdaf52ebdadb12243d0851486 /compiler/rustc_codegen_llvm/src | |
| parent | ba135ee568e4f7718b9d270fa20999b785dad9aa (diff) | |
| parent | 3e3a4192d8cda0c308ea87b2e8f6f1e8dcc74739 (diff) | |
| download | rust-589d843bd0ff72fd5a720bce63c2e6baa241550b.tar.gz rust-589d843bd0ff72fd5a720bce63c2e6baa241550b.zip | |
Rollup merge of #104559 - nnethercote:split-MacArgs, r=petrochenkov
Split `MacArgs` in two. `MacArgs` is an enum with three variants: `Empty`, `Delimited`, and `Eq`. It's used in two ways: - For representing attribute macro arguments (e.g. in `AttrItem`), where all three variants are used. - For representing function-like macros (e.g. in `MacCall` and `MacroDef`), where only the `Delimited` variant is used. In other words, `MacArgs` is used in two quite different places due to them having partial overlap. I find this makes the code hard to read. It also leads to various unreachable code paths, and allows invalid values (such as accidentally using `MacArgs::Empty` in a `MacCall`). This commit splits `MacArgs` in two: - `DelimArgs` is a new struct just for the "delimited arguments" case. It is now used in `MacCall` and `MacroDef`. - `AttrArgs` is a renaming of the old `MacArgs` enum for the attribute macro case. Its `Delimited` variant now contains a `DelimArgs`. Various other related things are renamed as well. These changes make the code clearer, avoids several unreachable paths, and disallows the invalid values. r? `@petrochenkov`
Diffstat (limited to 'compiler/rustc_codegen_llvm/src')
0 files changed, 0 insertions, 0 deletions
