From: Pierre-Emmanuel Patry Date: Sat, 28 Mar 2026 18:27:04 +0000 (+0100) Subject: gccrs: Update test with builtin macro definition X-Git-Tag: basepoints/gcc-17~165 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=515461cad910af4bcbcb66916e8ddba9ccfda0eb;p=thirdparty%2Fgcc.git gccrs: Update test with builtin macro definition Those test contain builtin macros that were not correctly defined. This was mostly fine because the compiler emitted attribute errors before the expansion step but now that the new builtin attribute checking is executed after the expansion we cannot ignore those missing definitions. gcc/testsuite/ChangeLog: * rust/compile/doc_macro.rs: Add concat builtin macro definition. * rust/compile/early_feature_gate_in_macro.rs: Add stringify builtin macro definition. * rust/compile/issue-3661.rs: Likewise. * rust/compile/parse_time_feature_gate.rs: Add concat and stringify builtin macro definition. Signed-off-by: Pierre-Emmanuel Patry --- diff --git a/gcc/testsuite/rust/compile/doc_macro.rs b/gcc/testsuite/rust/compile/doc_macro.rs index 179455ddf95..dff69baad07 100644 --- a/gcc/testsuite/rust/compile/doc_macro.rs +++ b/gcc/testsuite/rust/compile/doc_macro.rs @@ -1,4 +1,10 @@ +#![feature(rustc_attrs)] #![feature(no_core)] #![no_core] #![feature(extended_key_value_attributes)] #![doc = concat!("AB")] + +#[rustc_builtin_macro] +macro_rules! concat { + () => {{}}; +} diff --git a/gcc/testsuite/rust/compile/early_feature_gate_in_macro.rs b/gcc/testsuite/rust/compile/early_feature_gate_in_macro.rs index f7657736261..9e2a51027aa 100644 --- a/gcc/testsuite/rust/compile/early_feature_gate_in_macro.rs +++ b/gcc/testsuite/rust/compile/early_feature_gate_in_macro.rs @@ -8,6 +8,11 @@ macro_rules! concat { () => {{}}; } +#[rustc_builtin_macro] +macro_rules! stringify { + () => {{}}; +} + macro_rules! prefix_symbol( ($prefix : tt, { $($ident: ident, )* }) => { $( diff --git a/gcc/testsuite/rust/compile/issue-3661.rs b/gcc/testsuite/rust/compile/issue-3661.rs index 7cb7c6add7a..0c8eab3f2eb 100644 --- a/gcc/testsuite/rust/compile/issue-3661.rs +++ b/gcc/testsuite/rust/compile/issue-3661.rs @@ -1,9 +1,15 @@ #![feature(no_core)] #![no_core] #![feature(extended_key_value_attributes)] +#![feature(rustc_attrs)] + +#[rustc_builtin_macro] +macro_rules! stringify { + () => {{}}; +} pub macro m($inner_str:expr) { - #[m = $inner_str] + #[m = $inner_str] // { dg-error "macro not found" "" { target *-*-* } .-1 } struct S; diff --git a/gcc/testsuite/rust/compile/parse_time_feature_gate.rs b/gcc/testsuite/rust/compile/parse_time_feature_gate.rs index 238b2cfd5c7..907ac0c519b 100644 --- a/gcc/testsuite/rust/compile/parse_time_feature_gate.rs +++ b/gcc/testsuite/rust/compile/parse_time_feature_gate.rs @@ -1,5 +1,16 @@ #![feature(no_core)] #![no_core] +#![feature(rustc_attrs)] + +#[rustc_builtin_macro] +macro_rules! concat { + () => {{}}; +} + +#[rustc_builtin_macro] +macro_rules! stringify { + () => {{}}; +} // { dg-error "arbitrary expressions in key-value attributes are unstable" "" { target *-*-* } .+1 } #[export_name = concat!(stringify!(non), stringify!(literal))]