close Warning: Can't synchronize with repository "(default)" ("(default)" is not readable or not a Git repository.). Look in the Trac log for more information.

Opened 11 years ago

Closed 11 years ago

#73 closed defect (fixed)

Signal errors when modifying the standard readtable or standard pprint dispatch table

Reported by: Raymond Toy Owned by: somebody
Priority: major Milestone:
Component: Core Version: 2013-02
Keywords: Cc:

Description

Fare requested that errors be signaled when modifying the standard readtable and pprint dispatch table. Conforming programs are forbidden to modify them anyway.

Change History (1)

comment:1 Changed 11 years ago by toy.raymond@…

Resolution: fixed
Status: newclosed

commit 00844093cfc536936a1797bfbfa910ab1e4db7fe Author: Raymond Toy <toy.raymond@…> Date: Sat Feb 23 18:14:18 2013 -0800

Fix ticket:73

error.lisp
  • Create two new conditions, one for modifying the readtable and one for the pprint dispatch table.
exports.lisp
  • Export the two new conditions.
pprint.lisp
  • Add check to SET-PPRINT-DISPATCH to disallow modifying the standard pprint dispatch table.
  • Allow PPRINT-INIT to modify the standard pprint dispatch table.
print.lisp
  • In WITH-STANDARD-IO-SYNTAX, don't copy a new dispatch table; bind *print-pprint-dispatch* to the standard table.
reader.lisp
  • Add check to disallow modifying the standard readtable.
  • Allow INIT-STD-LISP-READTABLE to modify the standard readtable.
Note: See TracTickets for help on using tickets.