diff --git a/CHANGELOG.md b/CHANGELOG.md
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,12 @@
 # Revision history for djot
 
+## 0.1.4.1 -- 2026-07-21
+
+  * Fix bug in verbatim parsing (#17). We were wrongly allowing
+    backslash escapes for backticks.
+
+  * Fix resolution of reference links with newlines (#16).
+
 ## 0.1.4 -- 2026-03-17
 
   * Ensure that delims aren't matched in link destinations (#15).
diff --git a/djot.cabal b/djot.cabal
--- a/djot.cabal
+++ b/djot.cabal
@@ -1,6 +1,6 @@
 cabal-version:      3.0
 name:               djot
-version:            0.1.4
+version:            0.1.4.1
 synopsis:           Parser and renderer for djot light markup syntax.
 description:        Djot (<https://djot.net>) is a light markup language.
                     This package provides a data structure to represent
diff --git a/src/Djot/Inlines.hs b/src/Djot/Inlines.hs
--- a/src/Djot/Inlines.hs
+++ b/src/Djot/Inlines.hs
@@ -302,8 +302,7 @@
 pVerbatim = do
   numticks <- pTicks
   let ender = pTicks >>= guard . (== numticks)
-  let content = skipSome (skipSatisfyByte (\c -> c /= '`' && c /= '\\')) <|>
-                 (asciiChar '\\' <* anyChar) <|>
+  let content = skipSome (skipSatisfyByte (/= '`')) <|>
                  (fails ender *> skipSome (asciiChar '`'))
   bs <- trimSpaces <$> byteStringOf (skipMany content) <* (ender <|> eof)
   (rawInline <$> pRawAttribute <*> pure bs) <|> pure (verbatim bs)
@@ -427,8 +426,7 @@
   asciiChar ']'
   let label = normalizeLabel $
               if B.null bs
-                 then B8.filter (/= '\n')
-                      $ inlinesToByteString description
+                 then inlinesToByteString description
                  else bs
   pure $ Reference label
 
diff --git a/test/Main.hs b/test/Main.hs
--- a/test/Main.hs
+++ b/test/Main.hs
@@ -103,7 +103,7 @@
           native = either (\_ -> mempty) id $ parser (djot st)
           expected = native
           ropts = RenderOptions{ preserveSoftBreaks = True }
-          renderedDjot = encodeUtf8 . TL.fromStrict $ render (Just 62) $
+          renderedDjot = encodeUtf8 . TL.fromStrict $ render (Just 78) $
                            renderDjot ropts native
           actual = either (\_ -> mempty) id $ parser renderedDjot
           lbsToStr = TL.unpack . fromUtf8
diff --git a/test/regression.test b/test/regression.test
--- a/test/regression.test
+++ b/test/regression.test
@@ -255,3 +255,26 @@
 </ul>
 </section>
 ```
+
+Issue #16:
+
+```
+[An Adaptive Preforking
+Server Using Shared Memory][]
+
+# An Adaptive Preforking Server Using Shared Memory
+.
+<p><a href="#An-Adaptive-Preforking-Server-Using-Shared-Memory">An Adaptive Preforking
+Server Using Shared Memory</a></p>
+<section id="An-Adaptive-Preforking-Server-Using-Shared-Memory">
+<h1>An Adaptive Preforking Server Using Shared Memory</h1>
+</section>
+```
+
+Issue #17
+
+```
+the `$\` variable
+.
+<p>the <code>$\</code> variable</p>
+```
