]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 3676: Bar checks display the wrong location
authorDavid Kastrup <dak@gnu.org>
Mon, 25 Nov 2013 18:33:34 +0000 (19:33 +0100)
committerDavid Kastrup <dak@gnu.org>
Mon, 25 Nov 2013 22:45:37 +0000 (23:45 +0100)
This one is just embarrassing.  The lexer used last_input_ where it
should have been using here_input (), resulting in music identifiers
and some other stuff to be located one token early.

lily/lexer.ll

index 285de24267d372d2ca7498a9c5bcf96f0006d003..3bad9f2e7e9e40da7ac95289db44186c04951e13 100644 (file)
@@ -954,7 +954,7 @@ Lily_lexer::scan_escaped_word (const string &str)
        SCM sid = lookup_identifier (str);
        if (Music *m = unsmob_music (sid))
        {
-               m->set_spot (override_input (last_input_));
+               m->set_spot (override_input (here_input ()));
        }
 
        if (sid != SCM_UNDEFINED)
@@ -974,7 +974,7 @@ Lily_lexer::scan_shorthand (const string &str)
        SCM sid = lookup_identifier (str);
        if (Music *m = unsmob_music (sid))
        {
-               m->set_spot (override_input (last_input_));
+               m->set_spot (override_input (here_input ()));
        }
 
        if (sid != SCM_UNDEFINED)
@@ -1140,7 +1140,7 @@ Lily_lexer::eval_scm (SCM readerdata, char extra_token)
                                if (Music *m = unsmob_music (v))
                                {
                                        if (!unsmob_input (m->get_property ("origin")))
-                                               m->set_spot (override_input (last_input_));
+                                               m->set_spot (override_input (here_input ()));
                                }
                                        
                                int token;
@@ -1163,7 +1163,7 @@ Lily_lexer::eval_scm (SCM readerdata, char extra_token)
        if (Music *m = unsmob_music (sval))
        {
                if (!unsmob_input (m->get_property ("origin")))
-                       m->set_spot (override_input (last_input_));
+                       m->set_spot (override_input (here_input ()));
        }
 
        return sval;