From 83fc257cfa0797f3d90eb201ab399ea6462775b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kochma=C5=84ski?= Date: Mon, 2 Mar 2026 12:43:10 +0100 Subject: [PATCH] tests: add a regression test for a readtable-case bug --- src/tests/normal-tests/mixed.lsp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/tests/normal-tests/mixed.lsp b/src/tests/normal-tests/mixed.lsp index b47115d89..0869d5984 100644 --- a/src/tests/normal-tests/mixed.lsp +++ b/src/tests/normal-tests/mixed.lsp @@ -655,3 +655,17 @@ (result (translate-logical-pathname pathname)) (expect #P"/hello/bonjour/hi/barev/what/greetings.me")) (is (equalp result expect)))) + +;;; Reported by: Daniel KochmaƄski +;;; Created: 2026-03-02 +;;; Issue: https://gitlab.com/embeddable-common-lisp/ecl/-/issues/813 +;;; Description +;;; +;;; Reader does not handle correctly escaped characters when the +;;; READTABLE-CASE is :INVERT. +(deftest mix.0033.preserve-escaped-characters () + (let ((*readtable* (copy-readtable))) + (setf (readtable-case *readtable*) :invert) + (is (string= + (symbol-name (read-from-string "DANIEL|--xXx--|MANSKI")) + "daniel--xXx--manski"))))