@@ -190,12 +190,11 @@ fn builtin_eval(vm: &mut VirtualMachine, args: PyFuncArgs) -> PyResult {
190
190
vm,
191
191
args,
192
192
required = [ ( source, None ) ] ,
193
- optional = [
194
- ( globals, Some ( vm. ctx. dict_type( ) ) ) ,
195
- ( locals, Some ( vm. ctx. dict_type( ) ) )
196
- ]
193
+ optional = [ ( globals, None ) , ( locals, Some ( vm. ctx. dict_type( ) ) ) ]
197
194
) ;
198
195
196
+ check_but_allow_none ! ( vm, globals, vm. ctx. dict_type( ) ) ;
197
+
199
198
// Determine code object:
200
199
let code_obj = if objtype:: isinstance ( source, & vm. ctx . code_type ( ) ) {
201
200
source. clone ( )
@@ -227,12 +226,11 @@ fn builtin_exec(vm: &mut VirtualMachine, args: PyFuncArgs) -> PyResult {
227
226
vm,
228
227
args,
229
228
required = [ ( source, None ) ] ,
230
- optional = [
231
- ( globals, Some ( vm. ctx. dict_type( ) ) ) ,
232
- ( locals, Some ( vm. ctx. dict_type( ) ) )
233
- ]
229
+ optional = [ ( globals, None ) , ( locals, Some ( vm. ctx. dict_type( ) ) ) ]
234
230
) ;
235
231
232
+ check_but_allow_none ! ( vm, globals, vm. ctx. dict_type( ) ) ;
233
+
236
234
// Determine code object:
237
235
let code_obj = if objtype:: isinstance ( source, & vm. ctx . str_type ( ) ) {
238
236
let mode = compile:: Mode :: Exec ;
0 commit comments