# HG changeset patch
# Parent eb51aefaa91063badc5f2397b960119bceb7c3b3
(incomplete)
At least throw intelligble errors in SHARPSIGN_DOT macros passed
through '--eval'.
http://abcl.org/trac/ticket/334
diff -r eb51aefaa910 -r 7d7b35230115 src/org/armedbear/lisp/Interpreter.java
a
|
b
|
|
595 | 595 | initializeJLisp(); |
596 | 596 | StringInputStream stream = new StringInputStream(s); |
597 | 597 | final LispThread thread = LispThread.currentThread(); |
598 | | LispObject obj = stream.read(false, EOF, false, thread, |
599 | | Stream.currentReadtable); |
| 598 | LispObject obj = null; |
| 599 | |
| 600 | final SpecialBindingsMark mark0 = thread.markSpecialBindings(); |
| 601 | thread.bindSpecial(Symbol.DEBUGGER_HOOK, _DEBUGGER_HOOK_FUNCTION); |
| 602 | try { // catch possible errors from use of SHARPSIGN_DOT macros in --eval stanzas |
| 603 | obj = stream.read(false, EOF, false, thread, |
| 604 | Stream.currentReadtable); |
| 605 | } finally { |
| 606 | thread.resetSpecialBindings(mark0); |
| 607 | } |
600 | 608 | if (obj == EOF) |
601 | 609 | return error(new EndOfFile(stream)); |
| 610 | |
602 | 611 | final SpecialBindingsMark mark = thread.markSpecialBindings(); |
603 | 612 | thread.bindSpecial(Symbol.DEBUGGER_HOOK, _DEBUGGER_HOOK_FUNCTION); |
604 | 613 | try { |