diff --git a/src/engine_api.rs b/src/engine_api.rs index 00a616d0..664d0387 100644 --- a/src/engine_api.rs +++ b/src/engine_api.rs @@ -2059,7 +2059,7 @@ impl Engine { .collect(); #[cfg(feature = "no_function")] - let lib = StaticVec::new(); + let lib = crate::StaticVec::new(); let stmt = std::mem::take(ast.statements_mut()); crate::optimize::optimize_into_ast(self, scope, stmt, lib, optimization_level) diff --git a/tests/functions.rs b/tests/functions.rs index 9ce5cc0c..aa7ecc57 100644 --- a/tests/functions.rs +++ b/tests/functions.rs @@ -68,50 +68,48 @@ fn test_functions_namespaces() -> Result<(), Box> { Ok(()) } +#[cfg(not(feature = "no_module"))] #[test] fn test_functions_global_module() -> Result<(), Box> { let mut engine = Engine::new(); - #[cfg(not(feature = "no_module"))] - { - assert_eq!( - engine.eval::( - " - const ANSWER = 42; - fn foo() { global::ANSWER } - foo() - " - )?, - 42 - ); - - assert!(matches!(*engine.run(" + assert_eq!( + engine.eval::( + " + const ANSWER = 42; fn foo() { global::ANSWER } + foo() + " + )?, + 42 + ); - { - const ANSWER = 42; - foo() - } - ").expect_err("should error"), - EvalAltResult::ErrorInFunctionCall(_, _, err, _) - if matches!(&*err, EvalAltResult::ErrorVariableNotFound(v, _) if v == "global::ANSWER") - )); + assert!(matches!(*engine.run(" + fn foo() { global::ANSWER } - let mut module = Module::new(); - module.set_var("ANSWER", 123 as INT); - engine.register_static_module("global", module.into()); + { + const ANSWER = 42; + foo() + } + ").expect_err("should error"), + EvalAltResult::ErrorInFunctionCall(_, _, err, _) + if matches!(&*err, EvalAltResult::ErrorVariableNotFound(v, _) if v == "global::ANSWER") + )); - assert_eq!( - engine.eval::( - " - const ANSWER = 42; - fn foo() { global::ANSWER } - foo() - " - )?, - 123 - ); - } + let mut module = Module::new(); + module.set_var("ANSWER", 123 as INT); + engine.register_static_module("global", module.into()); + + assert_eq!( + engine.eval::( + " + const ANSWER = 42; + fn foo() { global::ANSWER } + foo() + " + )?, + 123 + ); engine.register_result_fn( "do_stuff",