--- lread.c 2019-12-20 01:07:33.264089317 +0100 +++ mylread.c 2019-12-20 01:02:38.605308850 +0100 @@ -1955,6 +1955,8 @@ /* True on the first time around. */ bool first_sexp = 1; Lisp_Object macroexpand = intern ("internal-macroexpand-for-load"); + Lisp_Object litcode = intern ("emacs-lisp-allow-literal-comments"); + Lisp_Object allow_literal_comments = find_symbol_value(litcode); if (NILP (Ffboundp (macroexpand)) || (STRINGP (sourcename) && suffix_p (sourcename, ".elc"))) @@ -2053,6 +2055,15 @@ || c == NO_BREAK_SPACE) goto read_next; + if (EQ (allow_literal_comments, Qt)) + { + if (c != '(' && c != '#') + { + while ((c = READCHAR) != '\n' && c != -1); + goto read_next; + } + } + if (! HASH_TABLE_P (read_objects_map) || XHASH_TABLE (read_objects_map)->count) read_objects_map