home: hub: zuo

Download patch

ref: c92794b4ee299f4a9d9a0c780a53803811e771a8
parent: 244cb2a15ce8e48cde9bd7080526840d296c5b5c
author: Matthew Flatt <mflatt@racket-lang.org>
date: Mon Nov 14 11:29:08 CST 2022

reader: treat `#!` as a line comment that continues with \

Closes #9

--- a/zuo.c
+++ b/zuo.c
@@ -1941,6 +1941,12 @@
       if (s[*_o] == ';') {
         while ((s[*_o] != '\n') && (s[*_o] != 0))
           (*_o)++;
+      } else if (s[*_o] == '#' && s[(*_o) + 1] == '!') {
+        while (((s[*_o] != '\n')
+                || (s[(*_o)-1] == '\\')
+                || ((s[(*_o)-2] == '\\') && (s[(*_o)-1] == '\r')))
+               && (s[*_o] != 0))
+          (*_o)++;
       } else if (s[*_o] == '#' && s[(*_o) + 1] == ';') {
         (*_o) += 2;
         stack = zuo_cons(zuo_cons(ZUO_IN_DISCARD_RECUR, z.o_null), stack);