From c1242fa52a9bf81d845d86fb7917d09a05e21c28 Mon Sep 17 00:00:00 2001 From: Jay McCarthy Date: Mon, 29 Aug 2016 08:11:13 -0400 Subject: [PATCH] Fix handling of dots at end, maybe should be an error. Closes PR1439 --- racket/src/racket/src/read.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/racket/src/racket/src/read.c b/racket/src/racket/src/read.c index 22effe5003..5332d0ebaf 100644 --- a/racket/src/racket/src/read.c +++ b/racket/src/racket/src/read.c @@ -2056,7 +2056,11 @@ read_inner_inner(Scheme_Object *port, Scheme_Object *stxsrc, Scheme_Hash_Table * dot = scheme_make_stx_w_offset(dot, dline, dcol, dpos, SPAN(port,dpos), stxsrc, STX_SRCTAG); } next = read_inner_inner(port, stxsrc, ht, indentation, params, comment_mode, pre_char, table, get_info); - ret = scheme_make_pair( dot, scheme_make_pair( ret, scheme_make_pair( next, scheme_null ) ) ); + if (SCHEME_EOFP(next)) { + ret = scheme_make_pair( dot, scheme_make_pair( ret, scheme_null ) ); + } else { + ret = scheme_make_pair( dot, scheme_make_pair( ret, scheme_make_pair( next, scheme_null ) ) ); + } if (stxsrc) { ret = scheme_make_stx_w_offset(ret, rline, rcol, rpos, SPAN(port,rpos), stxsrc, STX_SRCTAG); }