|
1 | 1 | use crate::errors::{
|
2 | 2 | CantEmitMIR, EmojiIdentifier, ErrorWritingDependencies, FerrisIdentifier,
|
3 | 3 | GeneratedFileConflictsWithDirectory, InputFileWouldBeOverWritten, MixedBinCrate,
|
4 |
| - MixedProcMacroCrate, OutDirError, ProcMacroDocWithoutArg, TempsDirError, |
| 4 | + MixedProcMacroCrate, OutDirError, ProcMacroCratePanicAbort, ProcMacroDocWithoutArg, |
| 5 | + TempsDirError, |
5 | 6 | };
|
6 | 7 | use crate::interface::{Compiler, Result};
|
7 | 8 | use crate::proc_macro_decls;
|
@@ -36,6 +37,7 @@ use rustc_session::search_paths::PathKind;
|
36 | 37 | use rustc_session::{Limit, Session};
|
37 | 38 | use rustc_span::symbol::{sym, Symbol};
|
38 | 39 | use rustc_span::FileName;
|
| 40 | +use rustc_target::spec::PanicStrategy; |
39 | 41 | use rustc_trait_selection::traits;
|
40 | 42 |
|
41 | 43 | use std::any::Any;
|
@@ -380,6 +382,10 @@ pub fn configure_and_expand(
|
380 | 382 | }
|
381 | 383 | }
|
382 | 384 |
|
| 385 | + if is_proc_macro_crate && sess.panic_strategy() == PanicStrategy::Abort { |
| 386 | + sess.emit_warning(ProcMacroCratePanicAbort); |
| 387 | + } |
| 388 | + |
383 | 389 | // For backwards compatibility, we don't try to run proc macro injection
|
384 | 390 | // if rustdoc is run on a proc macro crate without '--crate-type proc-macro' being
|
385 | 391 | // specified. This should only affect users who manually invoke 'rustdoc', as
|
|
0 commit comments