aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/rust/compile/derive_macro7.rs
diff options
context:
space:
mode:
authorArthur Cohen <arthur.cohen@embecosm.com>2023-06-01 16:23:27 +0200
committerArthur Cohen <arthur.cohen@embecosm.com>2024-01-16 18:46:24 +0100
commit446c19201459ed73bc100b4844e8ecccee5bfe2e (patch)
tree0d3c578bfe34f234809261a61b6591072b85884c /gcc/testsuite/rust/compile/derive_macro7.rs
parentc566f9081067c9328a0f07bcc8bac46dc69d1599 (diff)
downloadgcc-446c19201459ed73bc100b4844e8ecccee5bfe2e.zip
gcc-446c19201459ed73bc100b4844e8ecccee5bfe2e.tar.gz
gcc-446c19201459ed73bc100b4844e8ecccee5bfe2e.tar.bz2
gccrs: derive: Add dummy builtin transcriber for builtin derive macros.
Fixes #2257. Derive builtins do not need a real transcriber, but still need one. It will however never be called since builtin derive macros get expanded differently, and benefit from knowing on what kind of items they are applied (struct, enums, unions) rather than receiving a list of tokens like regular builtin macros. gcc/rust/ChangeLog: * expand/rust-macro-builtins.cc (MacroBuiltin::dummy): New function. * expand/rust-macro-builtins.h: Declare it. gcc/testsuite/ChangeLog: * rust/compile/derive_macro7.rs: New test.
Diffstat (limited to 'gcc/testsuite/rust/compile/derive_macro7.rs')
-rw-r--r--gcc/testsuite/rust/compile/derive_macro7.rs8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/testsuite/rust/compile/derive_macro7.rs b/gcc/testsuite/rust/compile/derive_macro7.rs
new file mode 100644
index 0000000..108e3cf
--- /dev/null
+++ b/gcc/testsuite/rust/compile/derive_macro7.rs
@@ -0,0 +1,8 @@
+#![feature(rustc_attrs)]
+
+#[rustc_builtin_macro]
+#[stable(feature = "rust1", since = "1.0.0")]
+#[allow_internal_unstable(core_intrinsics, libstd_sys_internals)]
+pub macro RustcDecodable($item:item) {
+ /* compiler built-in */
+} \ No newline at end of file