Still not working, but I have increasing confidence I'm on the right track.
This commit is contained in:
parent
a1c377bc7c
commit
bcb227a5f9
10 changed files with 110 additions and 108 deletions
|
|
@ -167,8 +167,8 @@ struct cons_pointer read_continuation( struct stack_frame *frame,
|
|||
|
||||
if ( url_feof( input ) ) {
|
||||
result =
|
||||
throw_exception( c_string_to_lisp_symbol( L"read"),
|
||||
c_string_to_lisp_string
|
||||
throw_exception( c_string_to_lisp_symbol( L"read" ),
|
||||
c_string_to_lisp_string
|
||||
( L"End of file while reading" ), frame_pointer );
|
||||
} else {
|
||||
switch ( c ) {
|
||||
|
|
@ -178,8 +178,8 @@ struct cons_pointer read_continuation( struct stack_frame *frame,
|
|||
/* skip all characters from semi-colon to the end of the line */
|
||||
break;
|
||||
case EOF:
|
||||
result = throw_exception( c_string_to_lisp_symbol( L"read"),
|
||||
c_string_to_lisp_string
|
||||
result = throw_exception( c_string_to_lisp_symbol( L"read" ),
|
||||
c_string_to_lisp_string
|
||||
( L"End of input while reading" ),
|
||||
frame_pointer );
|
||||
break;
|
||||
|
|
@ -268,8 +268,8 @@ struct cons_pointer read_continuation( struct stack_frame *frame,
|
|||
result = read_symbol_or_key( input, SYMBOLTV, c );
|
||||
} else {
|
||||
result =
|
||||
throw_exception(c_string_to_lisp_symbol( L"read"),
|
||||
make_cons( c_string_to_lisp_string
|
||||
throw_exception( c_string_to_lisp_symbol( L"read" ),
|
||||
make_cons( c_string_to_lisp_string
|
||||
( L"Unrecognised start of input character" ),
|
||||
make_string( c, NIL ) ),
|
||||
frame_pointer );
|
||||
|
|
@ -316,8 +316,8 @@ struct cons_pointer read_number( struct stack_frame *frame,
|
|||
switch ( c ) {
|
||||
case LPERIOD:
|
||||
if ( seen_period || !nilp( dividend ) ) {
|
||||
return throw_exception( c_string_to_lisp_symbol( L"read"),
|
||||
c_string_to_lisp_string
|
||||
return throw_exception( c_string_to_lisp_symbol( L"read" ),
|
||||
c_string_to_lisp_string
|
||||
( L"Malformed number: too many periods" ),
|
||||
frame_pointer );
|
||||
} else {
|
||||
|
|
@ -328,8 +328,8 @@ struct cons_pointer read_number( struct stack_frame *frame,
|
|||
break;
|
||||
case LSLASH:
|
||||
if ( seen_period || !nilp( dividend ) ) {
|
||||
return throw_exception( c_string_to_lisp_symbol( L"read"),
|
||||
c_string_to_lisp_string
|
||||
return throw_exception( c_string_to_lisp_symbol( L"read" ),
|
||||
c_string_to_lisp_string
|
||||
( L"Malformed number: dividend of rational must be integer" ),
|
||||
frame_pointer );
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue