about summary refs log tree commit diff
path: root/compiler/rustc_attr_data_structures/src/attributes.rs
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2025-06-20 09:59:20 +0000
committerbors <bors@rust-lang.org>2025-06-20 09:59:20 +0000
commit3b97f1308ff72016a4aaa93fbe6d09d4d6427815 (patch)
tree0ffeb6e134e7925baa8359c1f0941a65a5de4456 /compiler/rustc_attr_data_structures/src/attributes.rs
parent18491d5be00eb3ed2f1ccee2ac5b792694f2a7a0 (diff)
parentbb72cc7da830084c5f15f05999fd0a50b6bb7a40 (diff)
downloadrust-3b97f1308ff72016a4aaa93fbe6d09d4d6427815.tar.gz
rust-3b97f1308ff72016a4aaa93fbe6d09d4d6427815.zip
Auto merge of #142770 - tgross35:rollup-w74w39t, r=tgross35
Rollup of 8 pull requests

Successful merges:

 - rust-lang/rust#138291 (rewrite `optimize` attribute to use new attribute parsing infrastructure)
 - rust-lang/rust#140920 (Extract some shared code from codegen backend target feature handling)
 - rust-lang/rust#141990 (Implement send_signal for unix child processes)
 - rust-lang/rust#142668 (vec_deque/fmt/vec tests: remove static mut)
 - rust-lang/rust#142687 (Reduce uses of `hir_crate`.)
 - rust-lang/rust#142699 (Update books)
 - rust-lang/rust#142714 (add comment to `src/bootstrap/build.rs`)
 - rust-lang/rust#142753 (Update library dependencies)

r? `@ghost`
`@rustbot` modify labels: rollup
Diffstat (limited to 'compiler/rustc_attr_data_structures/src/attributes.rs')
-rw-r--r--compiler/rustc_attr_data_structures/src/attributes.rs6
1 files changed, 4 insertions, 2 deletions
diff --git a/compiler/rustc_attr_data_structures/src/attributes.rs b/compiler/rustc_attr_data_structures/src/attributes.rs
index cdc01dc6c91..65061059a02 100644
--- a/compiler/rustc_attr_data_structures/src/attributes.rs
+++ b/compiler/rustc_attr_data_structures/src/attributes.rs
@@ -38,7 +38,8 @@ pub enum InstructionSetAttr {
     ArmT32,
 }
 
-#[derive(Clone, Encodable, Decodable, Debug, PartialEq, Eq, HashStable_Generic, Default)]
+#[derive(Copy, Clone, Debug, PartialEq, Eq, Default, PrintAttribute)]
+#[derive(Encodable, Decodable, HashStable_Generic)]
 pub enum OptimizeAttr {
     /// No `#[optimize(..)]` attribute
     #[default]
@@ -229,7 +230,8 @@ pub enum AttributeKind {
 
     /// Represents `#[rustc_macro_transparency]`.
     MacroTransparency(Transparency),
-
+    /// Represents `#[optimize(size|speed)]`
+    Optimize(OptimizeAttr, Span),
     /// Represents [`#[repr]`](https://doc.rust-lang.org/stable/reference/type-layout.html#representations).
     Repr(ThinVec<(ReprAttr, Span)>),