diff options
author | dos-reis <gdr@axiomatics.org> | 2011-10-21 10:16:58 +0000 |
---|---|---|
committer | dos-reis <gdr@axiomatics.org> | 2011-10-21 10:16:58 +0000 |
commit | 002256394cd0b9b4cffb7dd0a309e993ade36d60 (patch) | |
tree | eb3604e21bf483d8d51aa0ff3998fa193adf1378 /src/boot/strap/parser.clisp | |
parent | ce9a3f7062228b84610f0effa0dec5a4e87095f4 (diff) | |
download | open-axiom-002256394cd0b9b4cffb7dd0a309e993ade36d60.tar.gz |
Workaround proclamation bug in GCL
* boot/utility.boot (firstNonblankPosition): Do not declare.
Diffstat (limited to 'src/boot/strap/parser.clisp')
-rw-r--r-- | src/boot/strap/parser.clisp | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index 3d8d15f8..a91db6cc 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -396,6 +396,25 @@ (AND (OR (|bpSexp|) (|bpTrap|)) (|bpPush| (|bfSymbol| (|bpPop1|))))) (T (|bpString|)))) +(DEFUN |bpChar| () + (PROG (|ISTMP#1| |s| |a|) + (DECLARE (SPECIAL |$stok| |$ttok|)) + (RETURN + (COND + ((AND (CONSP |$stok|) (EQ (CAR |$stok|) 'ID) (EQ |$ttok| '|char|)) + (SETQ |a| (|bpState|)) + (COND + ((|bpApplication|) (SETQ |s| (|bpPop1|)) + (COND + ((AND (CONSP |s|) (EQ (CAR |s|) '|char|) + (PROGN + (SETQ |ISTMP#1| (CDR |s|)) + (AND (CONSP |ISTMP#1|) (NULL (CDR |ISTMP#1|))))) + (|bpPush| |s|)) + (T (|bpRestore| |a|) NIL))) + (T NIL))) + (T NIL))))) + (DEFUN |bpExportItemTail| () (OR (AND (|bpEqKey| 'BEC) (OR (|bpAssign|) (|bpTrap|)) @@ -976,7 +995,8 @@ (|bpPush| (|bfDTuple| (|bpPop1|)))))) (DEFUN |bpPattern| () - (OR (|bpBracketConstruct| #'|bpPatternL|) (|bpName|) (|bpConstTok|))) + (OR (|bpBracketConstruct| #'|bpPatternL|) (|bpChar|) (|bpName|) + (|bpConstTok|))) (DEFUN |bpEqual| () (AND (|bpEqKey| 'SHOEEQ) (OR (|bpApplication|) (|bpConstTok|) (|bpTrap|)) |