next up previous contents
Next: 3.5 Source Location Printing Up: 3.4 Variable Access Previous: 3.4.1 Variable Value Availability

3.4.2 Note On Lexical Variable Access

 

When the debugger command loop establishes variable bindings for available variables, these variable bindings have lexical scope and dynamic extent.gif You can close over them, but such closures can't be used as upward funargs.

You can also set local variables using setq, but if the variable was closed over in the original source and never set, then setting the variable in the debugger may not change the value in all the functions the variable is defined in. Another risk of setting variables is that you may assign a value of a type that the compiler proved the variable could never take on. This may result in bad things happening.



Raymond Toy
Mon Jul 14 09:11:27 EDT 1997