diff --git a/src/CHANGELOG b/src/CHANGELOG index b046bd5d0..c186a61d6 100644 --- a/src/CHANGELOG +++ b/src/CHANGELOG @@ -71,6 +71,11 @@ ECL 0.9l-p1: - PROCLAIM/DECLAIM now understand the abbreviated form of type declarations user-defined and complex types. + - Sharp-dot macro reader (#.) gets its own sharp-equal context (#=) so that + the following form + (read-from-string "'#.(princ (list '#1=(1 2) '#1#))") + actually prints the right list (#1=(1 2) #1#). + ;;; Local Variables: *** ;;; mode:text *** ;;; fill-column:79 *** diff --git a/src/c/read.d b/src/c/read.d index 95edc6fca..6b7350fb7 100644 --- a/src/c/read.d +++ b/src/c/read.d @@ -1037,7 +1037,7 @@ sharp_dot_reader(cl_object in, cl_object c, cl_object d) { if (d != Cnil && !read_suppress) extra_argument('.', in, d); - c = ecl_read_object(in); + c = ecl_read_object_non_recursive(in); if (c == OBJNULL) FEend_of_file(in); if (read_suppress)