Changeset 8495


Ignore:
Timestamp:
02/06/05 19:36:54 (17 years ago)
Author:
piso
Message:

SET-SYNTAX-FROM-CHAR: "If the character is a dispatching macro character, its
entire dispatch table of reader macro functions is copied."

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/j/src/org/armedbear/lisp/Readtable.java

    r8479 r8495  
    33 *
    44 * Copyright (C) 2003-2005 Peter Graves
    5  * $Id: Readtable.java,v 1.40 2005-02-06 00:53:33 piso Exp $
     5 * $Id: Readtable.java,v 1.41 2005-02-06 19:36:54 piso Exp $
    66 *
    77 * This program is free software; you can redistribute it and/or
     
    256256        if (dispatchTable == null) {
    257257            LispCharacter c = LispCharacter.getInstance(dispChar);
    258             return signal(new LispError(String.valueOf(c) + " is not a dispatch character."));
     258            return signal(new LispError(c.writeToString() +
     259                                        " is not a dispatch character."));
    259260        }
    260261        LispObject function =
     
    270271        if (dispatchTable == null) {
    271272            LispCharacter c = LispCharacter.getInstance(dispChar);
    272             signal(new LispError(String.valueOf(c) + " is not a dispatch character."));
     273            signal(new LispError(c.writeToString() +
     274                                 " is not a dispatch character."));
    273275        }
    274276        dispatchTable.functions[Utilities.toUpperCase(subChar)] = function;
     
    510512            toReadtable.readerMacroFunctions[toChar] =
    511513                fromReadtable.readerMacroFunctions[fromChar];
     514            // "If the character is a dispatching macro character, its entire
     515            // dispatch table of reader macro functions is copied."
     516            if (fromReadtable.dispatchTables[fromChar] != null) {
     517                toReadtable.dispatchTables[toChar] =
     518                    new DispatchTable(fromReadtable.dispatchTables[fromChar]);
     519            }
    512520            return T;
    513521        }
Note: See TracChangeset for help on using the changeset viewer.