]> git.proxmox.com Git - rustc.git/blame - compiler/rustc_builtin_macros/src/compile_error.rs
New upstream version 1.75.0+dfsg1
[rustc.git] / compiler / rustc_builtin_macros / src / compile_error.rs
CommitLineData
041b39d2
XL
1// The compiler code necessary to support the compile_error! extension.
2
74b04a01 3use rustc_ast::tokenstream::TokenStream;
dfeec247
XL
4use rustc_expand::base::{self, *};
5use rustc_span::Span;
041b39d2 6
dfeec247
XL
7pub fn expand_compile_error<'cx>(
8 cx: &'cx mut ExtCtxt<'_>,
9 sp: Span,
10 tts: TokenStream,
11) -> Box<dyn base::MacResult + 'cx> {
5e7ed085
FG
12 let Some(var) = get_single_str_from_tts(cx, sp, tts, "compile_error!") else {
13 return DummyResult::any(sp);
041b39d2
XL
14 };
15
353b0b11
FG
16 #[expect(
17 rustc::diagnostic_outside_of_impl,
18 reason = "diagnostic message is specified by user"
19 )]
20 #[expect(rustc::untranslatable_diagnostic, reason = "diagnostic message is specified by user")]
fe692bf9 21 cx.span_err(sp, var.to_string());
041b39d2
XL
22
23 DummyResult::any(sp)
24}