about summary refs log tree commit diff
diff options
context:
space:
mode:
authorVadim Petrochenkov <vadim.petrochenkov@gmail.com>2018-06-23 20:42:25 +0300
committerVadim Petrochenkov <vadim.petrochenkov@gmail.com>2018-06-23 20:42:25 +0300
commit117cb040f14719489a38ace1c256ec282f42c367 (patch)
treedc7f9a31dd250e2acd6bbd1888184d6dd4cf76e0
parentc00f5af4d6e709cb23f9d47ceb466c13a073f7b5 (diff)
downloadrust-117cb040f14719489a38ace1c256ec282f42c367.tar.gz
rust-117cb040f14719489a38ace1c256ec282f42c367.zip
hygiene: Make sure transparency of `Mark::root()` is an implementation detail and cannot be inspected outside of `hygiene.rs`
-rw-r--r--src/libsyntax_pos/hygiene.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/libsyntax_pos/hygiene.rs b/src/libsyntax_pos/hygiene.rs
index cd2b8b2bff8..5c35984dfd0 100644
--- a/src/libsyntax_pos/hygiene.rs
+++ b/src/libsyntax_pos/hygiene.rs
@@ -126,11 +126,13 @@ impl Mark {
 
     #[inline]
     pub fn transparency(self) -> Transparency {
+        assert_ne!(self, Mark::root());
         HygieneData::with(|data| data.marks[self.0 as usize].transparency)
     }
 
     #[inline]
     pub fn set_transparency(self, transparency: Transparency) {
+        assert_ne!(self, Mark::root());
         HygieneData::with(|data| data.marks[self.0 as usize].transparency = transparency)
     }