diff options
| author | Nicholas Nethercote <n.nethercote@gmail.com> | 2025-06-02 19:39:38 +1000 |
|---|---|---|
| committer | Nicholas Nethercote <n.nethercote@gmail.com> | 2025-06-12 21:17:17 +1000 |
| commit | 376cbc3787d2312b6b3b5db84dd1734fed1ebda6 (patch) | |
| tree | 1f93fafea489fc66c36fbacd70b45931952418f2 /compiler/rustc_passes/src/errors.rs | |
| parent | bdfe1b9fb0c3f98df2a99ab96c6190542c234060 (diff) | |
| download | rust-376cbc3787d2312b6b3b5db84dd1734fed1ebda6.tar.gz rust-376cbc3787d2312b6b3b5db84dd1734fed1ebda6.zip | |
Introduce `-Zmacro-stats`.
It collects data about macro expansions and prints them in a table after expansion finishes. It's very useful for detecting macro bloat, especially for proc macros. Details: - It measures code snippets by pretty-printing them and then measuring lines and bytes. This required a bunch of additional pretty-printing plumbing, in `rustc_ast_pretty` and `rustc_expand`. - The measurement is done in `MacroExpander::expand_invoc`. - The measurements are stored in `ExtCtxt::macro_stats`.
Diffstat (limited to 'compiler/rustc_passes/src/errors.rs')
0 files changed, 0 insertions, 0 deletions
