|
Only one so far…
As stack frames are added to the stack the interpreter should dynamically increase the size of its memory buffer to hold the additional memory locations. However there is a small bug in the memory routines that will cause the interpreter to crash when memory usage approaches the size of the allocated buffer. Currently the interpreter starts with a buffer of 256 memory locations and there is a small bug which will cause the interpreter to crash if you use the '%n' notation to access anything beyond address 256.
Cause: I made a memory pointer visible outside the CMemory class to make accessing memory in stack frames easier. However this means memory access no longer goes through the CMemory class, which is responsible for managing the buffer.
Moral: If you make a pointer visible outside of its class it will eventually come back to haunt you.
|
|