diff --git a/src/scheme/irq.rs b/src/scheme/irq.rs
index 87309ade774c5e3a931c106dddab6642b4e6434d..0c3a844016eae732591c1b9bed0e6c4866ac6d54 100644
--- a/src/scheme/irq.rs
+++ b/src/scheme/irq.rs
@@ -83,7 +83,8 @@ impl IrqScheme {
 
         *HANDLES.write() = Some(BTreeMap::new());
 
-        let cpus = if cfg!(feature = "acpi") {
+        #[cfg(feature = "acpi")]
+        let cpus = {
             use crate::acpi::madt::*;
 
             let madt: &Madt = unsafe { MADT.as_ref().unwrap() };
@@ -92,9 +93,9 @@ impl IrqScheme {
                 MadtEntry::LocalApic(apic) => Some(apic.id),
                 _ => None,
             }).collect::<Vec<_>>()
-        } else {
-            vec!(0)
         };
+        #[cfg(not(feature = "acpi"))]
+        let cpus = vec!(0);
 
         IrqScheme {
             next_fd: AtomicUsize::new(0),