Eliminate the last call to S_force_word() passing allow_initial_tick as TRUE.
authorBrian Fraser <fraserbn@gmail.com>
Tue, 26 Feb 2013 23:07:41 +0000 (20:07 -0300)
committerNicholas Clark <nick@ccl4.org>
Tue, 11 Jun 2013 13:03:46 +0000 (15:03 +0200)
Turns out that that final place using the allow_tick hack could get a tick,
because it was using the original buffer, rather than the already processed
identifier from scan_word.

toke.c

diff --git a/toke.c b/toke.c
index d3bc457..6c865c6 100644 (file)
--- a/toke.c
+++ b/toke.c
@@ -8587,8 +8587,8 @@ Perl_yylex(pTHX)
                     PERL_UNUSED_VAR(tboffset);
 #else
                    if (have_name)
-                       (void) force_word(PL_oldbufptr + tboffset, WORD,
-                                         FALSE, TRUE, TRUE);
+                       (void) force_word(tmpbuf, WORD,
+                                         FALSE, TRUE, FALSE);
 #endif
                    PREBLOCK(FORMAT);
                }