fix: type variable linking bug

This commit is contained in:
Shunsuke Shibayama 2024-09-17 02:00:51 +09:00
parent cb9380f3aa
commit 9d88e8d7e7
5 changed files with 78 additions and 27 deletions

View file

@ -627,6 +627,17 @@ impl RecursionCounter {
#[macro_export]
macro_rules! set_recursion_limit {
(panic, $msg:expr, $limit:expr) => {
use std::sync::atomic::AtomicU32;
static COUNTER: AtomicU32 = AtomicU32::new($limit);
let counter = $crate::macros::RecursionCounter::new(&COUNTER);
if counter.limit_reached() {
$crate::log!(err "Recursion limit reached");
panic!($msg);
}
};
($returns:expr, $limit:expr) => {
use std::sync::atomic::AtomicU32;