This commit is contained in:
blueloveTH 2024-05-10 14:30:15 +08:00
parent b09b848c23
commit 6e9e25ca34
2 changed files with 13 additions and 3 deletions

View File

@ -268,7 +268,7 @@ __NEXT_STEP:;
PK_DEBUG_ASSERT(func._closure != nullptr); PK_DEBUG_ASSERT(func._closure != nullptr);
func._closure->set(_name, _0); func._closure->set(_name, _0);
}else{ }else{
vm->UnboundLocalError(_name); vm->NameError(_name);
} }
} }
}else{ }else{
@ -323,9 +323,9 @@ __NEXT_STEP:;
if(func.decl == __dynamic_func_decl){ if(func.decl == __dynamic_func_decl){
PK_DEBUG_ASSERT(func._closure != nullptr); PK_DEBUG_ASSERT(func._closure != nullptr);
bool ok = func._closure->del(_name); bool ok = func._closure->del(_name);
if(!ok) vm->UnboundLocalError(_name); if(!ok) vm->NameError(_name);
}else{ }else{
vm->UnboundLocalError(_name); vm->NameError(_name);
} }
} }
}else{ }else{

View File

@ -52,3 +52,13 @@ assert globals == {'a': 1}
exec('a=2', globals) exec('a=2', globals)
assert globals == {'a': 2} assert globals == {'a': 2}
globals = {'a': 2}
locals = {'b': 3}
assert eval('a*b', globals, locals) == 6
try:
exec('a*b*c', globals, locals)
exit(1)
except NameError:
pass