Better error message with invalid tuple literals

db4
Slava Pestov 2008-09-24 21:23:26 -05:00
parent e3cc8f3ce4
commit 78881e1368
2 changed files with 6 additions and 0 deletions

View File

@ -323,3 +323,5 @@ M: bad-effect summary
drop "Bad stack effect declaration" ;
M: bad-escape summary drop "Bad escape code" ;
M: bad-literal-tuple summary drop "Bad literal tuple" ;

View File

@ -63,11 +63,14 @@ ERROR: invalid-slot-name name ;
: parse-slot-value ( -- )
scan scan-object 2array , scan "}" assert= ;
ERROR: bad-literal-tuple ;
: (parse-slot-values) ( -- )
parse-slot-value
scan {
{ "{" [ (parse-slot-values) ] }
{ "}" [ ] }
[ bad-literal-tuple ]
} case ;
: parse-slot-values ( -- )
@ -86,4 +89,5 @@ ERROR: invalid-slot-name name ;
{ "f" [ \ } parse-until boa>tuple ] }
{ "{" [ parse-slot-values assoc>tuple ] }
{ "}" [ new ] }
[ bad-literal-tuple ]
} case ;