summaryrefslogtreecommitdiffstats
path: root/compiler/rustc_data_structures/src/intern.rs
diff options
context:
space:
mode:
Diffstat (limited to 'compiler/rustc_data_structures/src/intern.rs')
-rw-r--r--compiler/rustc_data_structures/src/intern.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/compiler/rustc_data_structures/src/intern.rs b/compiler/rustc_data_structures/src/intern.rs
index ba94f3776..e0f8c350c 100644
--- a/compiler/rustc_data_structures/src/intern.rs
+++ b/compiler/rustc_data_structures/src/intern.rs
@@ -1,5 +1,6 @@
use crate::stable_hasher::{HashStable, StableHasher};
use std::cmp::Ordering;
+use std::fmt::{self, Debug};
use std::hash::{Hash, Hasher};
use std::ops::Deref;
use std::ptr;
@@ -20,7 +21,6 @@ mod private {
/// The `PrivateZst` field means you can pattern match with `Interned(v, _)`
/// but you can only construct a `Interned` with `new_unchecked`, and not
/// directly.
-#[derive(Debug)]
#[rustc_pass_by_value]
pub struct Interned<'a, T>(pub &'a T, pub private::PrivateZst);
@@ -108,5 +108,11 @@ where
}
}
+impl<T: Debug> Debug for Interned<'_, T> {
+ fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
+ self.0.fmt(f)
+ }
+}
+
#[cfg(test)]
mod tests;