diff options
Diffstat (limited to 'src/boot')
-rw-r--r-- | src/boot/parser.boot | 9 | ||||
-rw-r--r-- | src/boot/strap/parser.clisp | 15 |
2 files changed, 6 insertions, 18 deletions
diff --git a/src/boot/parser.boot b/src/boot/parser.boot index 6d27017b..1fd714dc 100644 --- a/src/boot/parser.boot +++ b/src/boot/parser.boot @@ -464,7 +464,7 @@ bpImport() == ++ Namespace: ++ NAMESPACE Name bpNamespace() == - bpEqKey "NAMESPACE" and bpName() and + bpEqKey "NAMESPACE" and (bpName() or bpDot()) and bpPush %Namespace bpPop1() -- Parse a type alias defnition: @@ -592,17 +592,10 @@ bpSelector()== and bpPush(bfElt(bpPop2(),bpPop1())) or bpPush bfSuffixDot bpPop1() ) -++ NamedScope: -++ NAMESPACE (Name | DOT) -bpNamedScope() == - bpEqKey "NAMESPACE" and (bpName() or bpDot() or bpTrap()) and - bpPush %Namespace bpPop1() - bpApplication()== bpPrimary() and bpAnyNo function bpSelector and (bpApplication() and bpPush(bfApplication(bpPop2(),bpPop1())) or true) - or bpNamedScope() ++ Typing: ++ SimpleType diff --git a/src/boot/strap/parser.clisp b/src/boot/strap/parser.clisp index 00381889..e780b7a7 100644 --- a/src/boot/strap/parser.clisp +++ b/src/boot/strap/parser.clisp @@ -499,7 +499,7 @@ (T NIL))))) (DEFUN |bpNamespace| () - (AND (|bpEqKey| 'NAMESPACE) (|bpName|) + (AND (|bpEqKey| 'NAMESPACE) (OR (|bpName|) (|bpDot|)) (|bpPush| (|%Namespace| (|bpPop1|))))) (DEFUN |bpTypeAliasDefition| () @@ -627,16 +627,11 @@ (|bpPush| (|bfElt| (|bpPop2|) (|bpPop1|)))) (|bpPush| (|bfSuffixDot| (|bpPop1|)))))) -(DEFUN |bpNamedScope| () - (AND (|bpEqKey| 'NAMESPACE) (OR (|bpName|) (|bpDot|) (|bpTrap|)) - (|bpPush| (|%Namespace| (|bpPop1|))))) - (DEFUN |bpApplication| () - (OR (AND (|bpPrimary|) (|bpAnyNo| #'|bpSelector|) - (OR (AND (|bpApplication|) - (|bpPush| (|bfApplication| (|bpPop2|) (|bpPop1|)))) - T)) - (|bpNamedScope|))) + (AND (|bpPrimary|) (|bpAnyNo| #'|bpSelector|) + (OR (AND (|bpApplication|) + (|bpPush| (|bfApplication| (|bpPop2|) (|bpPop1|)))) + T))) (DEFUN |bpTyping| () (COND |