[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
And another dark corner...
From: |
David Kastrup |
Subject: |
And another dark corner... |
Date: |
Sun, 01 Jan 2012 16:02:49 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux) |
lexer.ll:
lyric_fudge (string s)
{
char *chars = string_copy (s);
for (char *p = chars; *p ; p++)
{
if (*p == '_' && (p == chars || *(p-1) != '\\'))
*p = ' ';
}
s = string (chars);
delete[] chars;
ssize i = 0;
if ((i = s.find ("\\,")) != NPOS) // change "\," to TeX's "\c "
{
* (((char*)s.c_str ()) + i + 1) = 'c';
s = s.substr (0, i + 2) + " " + s.substr (i - 2);
}
return s;
}
WTF? `change "\," to TeX's "\c "': can it get more ridiculous than
that? Actually yes:
{ c } \addlyrics { a\,ch }
lilypond /tmp/aga.ly
GNU LilyPond 2.15.22
Processing `/tmp/aga.ly'
Parsing...terminate called after throwing an instance of 'std::out_of_range'
what(): basic_string::substr
Compilation aborted at Sun Jan 1 15:52:36
We not only have dead code trying to placate the non-existing TeX
backend, but that code actually does not even work after getting an
"update" in 2006. And who knows whether it worked before that.
--
David Kastrup
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- And another dark corner...,
David Kastrup <=