Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Updates: Status: Verified Comment #8 on issue 1009 by v.villenave: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 (No comment was entered for this change.) -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Updates: Status: Fixed Labels: fixed_2_13_14 Comment #7 on issue 1009 by n.puttock: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 (No comment was entered for this change.) -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Updates: Status: Started Owner: n.puttock Comment #6 on issue 1009 by n.puttock: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 (No comment was entered for this change.) -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Updates: Labels: -Priority-Critical Priority-High Comment #5 on issue 1009 by percival.music.ca: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 I can't speak to Neil's suggestion. As for this issue's priority, I think we've identified a gap in the classification. I hereby declare that issues which: 1. produce no output, and 2. fail to give a reasonable user a clue about what's wrong shall be priority-high. I think the "defect" type is valid. Yes, the fix is as simple as printing out a more informative message. That's no reason to lower the priority. I've updated the CG accordingly. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Comment #4 on issue 1009 by n.puttock: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 I don't get an exception under Ubuntu 9.10 x64, but the warning message is a bit weird: warning: transposition by b��' makes alteration larger than double The garbled pitch string changes each time the snippet's compiled, which is hardly surprising when you look in pitch.cc and see that trying to convert Rational (-3/2) into a valid alteration results in a memory access outside the array holding the alteration strings (the index is -2). We have a private method Pitch::normalize (), which ensures valid octaves and alterations; why don't we use it in this case (even if it has to be made public)? -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Comment #3 on issue 1009 by d...@gnu.org: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 I have a hard time picturing what transposing { a b c d } from disis to c should result in. A scale in disis contains disis eisis fisisis gisis aisis bisis cisisis disis c in this scale would transpose to beseses in a c scale. There is no such thing as beseses. Incidentally, there is no such thing as cisisis either, but Lilypond should only balk when it has to produce something impossible, not just think about it. Since transposition does not just deal with absolute pitches but with enharmonicity as well, there is no way to properly transpose this in the demanded manner. Aborting is the sanest choice. Now let's look at the other scales/transforms aisis: { a b c d } -> { ceses beses eseses deses } bisis: { a b c d } -> { beseses ceses deseses eseses } cisis: { a b c d } -> { aeses beses ceses deses } disis: { a b c d } -> { geses aeses beseses ceses } eisis: { a b c d } -> { feses geses aeseses beseses } fisis: { a b c d } -> { eses fes geses aeses } gisis: { a b c d } -> { deses eses feses geses } You'll see that Lilypond only balks at those transforms which contain impossible notes. There are no notes Lilypond could produce. Aborting is the right choice. The best thing you can hope to do is to produce a nicer error message. The notation manual contains under "Transpose" a snippet that transposes using "minimal accidentals". It is conceivable that employing this snippet will avert the abort. Anyway, there is no valid output possible for the given input. Aborting is the only sensible thing to do. The only thing that could possibly be improved is the error message when aborting. So this is not priority "Critical", but "Low", and it is not a "Defect" but an enhancement request. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
lilyp...@googlecode.com writes: > Comment #2 on issue 1009 by Carl.D.Sorensen: \transpose causes crash > (std::logic_error) > http://code.google.com/p/lilypond/issues/detail?id=1009 > > disis (without the comma) causes terminate to be called the same as > disis, (with the comma) > > aisis, bisis, disis, and eisis all cause terminate to be called. > > cisis, fisis, and gisis do not cause terminate to be called. I have a hard time picturing what transposing { a b c d } from disis to c should result in. A scale in disis contains disis eisis fisisis gisis aisis bisis cisisis disis c in this scale would transpose to beseses in a c scale. There is no such thing as beseses. Incidentally, there is no such thing as cisisis either, but Lilypond should only balk when it has to produce something impossible, not just think about it. Since transposition does not just deal with absolute pitches but with enharmonicity as well, there is no way to properly transpose this in the demanded manner. Aborting is the sanest choice. Now let's look at the other scales/transforms aisis: { a b c d } -> { ceses beses eseses deses } bisis: { a b c d } -> { beseses ceses deseses eseses } cisis: { a b c d } -> { aeses beses ceses deses } disis: { a b c d } -> { geses aeses beseses ceses } eisis: { a b c d } -> { feses geses aeseses beseses } fisis: { a b c d } -> { eses fes geses aeses } gisis: { a b c d } -> { deses eses feses geses } You'll see that Lilypond only balks at those transforms which contain impossible notes. There are no notes Lilypond could produce. Aborting is the right choice. The best thing you can hope to do is to produce a nicer error message. The notation manual contains under "Transpose" a snippet that transposes using "minimal accidentals". It is conceivable that employing this snippet will avert the abort. -- David Kastrup ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Comment #2 on issue 1009 by Carl.D.Sorensen: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 disis (without the comma) causes terminate to be called the same as disis, (with the comma) aisis, bisis, disis, and eisis all cause terminate to be called. cisis, fisis, and gisis do not cause terminate to be called. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond
Re: Issue 1009 in lilypond: \transpose causes crash (std::logic_error)
Updates: Labels: -Priority-Medium Priority-Critical Comment #1 on issue 1009 by percival.music.ca: \transpose causes crash (std::logic_error) http://code.google.com/p/lilypond/issues/detail?id=1009 To be honest, I'm not totally certain if this should be Critical, since it's not a crash. But throwing an exception isn't the best of things, so I'll mark it as such for now. -- You received this message because you are listed in the owner or CC fields of this issue, or because you starred this issue. You may adjust your issue notification preferences at: http://code.google.com/hosting/settings ___ bug-lilypond mailing list bug-lilypond@gnu.org http://lists.gnu.org/mailman/listinfo/bug-lilypond