use vmx;

pub struct ClearLocalInterruptsGuard(());

impl ClearLocalInterruptsGuard {
    pub fn new() -> Self {
        vmx::cli();
        ClearLocalInterruptsGuard(())
    }
}

impl Default for ClearLocalInterruptsGuard {
    fn default() -> Self {
        ClearLocalInterruptsGuard::new()
    }
}

impl Drop for ClearLocalInterruptsGuard {
    fn drop(&mut self) {
        vmx::sti();
    }
}

use vmx;

pub struct ClearLocalInterruptsGuard;

impl ClearLocalInterruptsGuard {
    pub fn new() -> Self {
        vmx::cli();
        ClearLocalInterruptsGuard {}
    }
}

impl Drop for ClearLocalInterruptsGuard {
    fn drop(&mut self) {
        vmx::sti();
    }
}

--- 
+++ 
@@ -1,17 +1,11 @@
 use vmx;
 
-pub struct ClearLocalInterruptsGuard(());
+pub struct ClearLocalInterruptsGuard;
 
 impl ClearLocalInterruptsGuard {
     pub fn new() -> Self {
         vmx::cli();
-        ClearLocalInterruptsGuard(())
-    }
-}
-
-impl Default for ClearLocalInterruptsGuard {
-    fn default() -> Self {
-        ClearLocalInterruptsGuard::new()
+        ClearLocalInterruptsGuard {}
     }
 }
 
Make ClearLocalInterruptsGuard a bottom type
