]> Repositorios git - scryer-prolog.git/commitdiff
don't calculate panic message eagerly
authorSkgland <[email protected]>
Sun, 7 Dec 2025 22:06:09 +0000 (23:06 +0100)
committerBennet Bleßmann <[email protected]>
Sun, 7 Dec 2025 22:06:09 +0000 (23:06 +0100)
src/macros.rs

index a5e16b8b607ee1bba4ffcc98afafe80ba799efa8..7e7853dcc1b5c033e98dc4da60564254b1a4c07d 100644 (file)
@@ -481,11 +481,13 @@ pub(crate) use heap_index_checked;
 macro_rules! heap_index {
     ($idx:expr) => {{
         let idx = $idx;
-        $crate::macros::heap_index_checked!(idx).expect(&format!(
-            "overflow while calculating heap index {idx} * {} > {}",
-            std::mem::size_of::<HeapCellValue>(),
-            usize::MAX,
-        ))
+        $crate::macros::heap_index_checked!(idx).unwrap_or_else(|| {
+            panic!(
+                "overflow while calculating heap index {idx} * {} > {}",
+                std::mem::size_of::<HeapCellValue>(),
+                usize::MAX,
+            )
+        })
     }};
 }