diff options
author | Nicholas Clark <nick@ccl4.org> | 2011-03-23 12:18:20 +0000 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2011-03-28 10:21:48 +0100 |
commit | d5b9c847979c6f2305b186e446b045fa6af209ee (patch) | |
tree | c8c64a0eea294cbbd4899215b8b8abc3b67203ec /sv.c | |
parent | 1295f46c24c81f9da55f6c9e00e77ddb9cc49e34 (diff) | |
download | perl-d5b9c847979c6f2305b186e446b045fa6af209ee.tar.gz |
Fix *printf %ld handling for microperl (and other obscure platforms)
07208e09d4435b4e accidentally moved the implicit q = q + 1 into conditionally
compiled code, which is compiled most everywhere else, except miniperl. Without
the increment of q, formats such as 'ld' were not being recognised as formats.
This was noticed because the tokeniser implements __LINE__ by converting to a
string using %ld.
Diffstat (limited to 'sv.c')
-rw-r--r-- | sv.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -10375,8 +10375,9 @@ Perl_sv_vcatpvfn(pTHX_ SV *const sv, const char *const pat, const STRLEN patlen, break; #endif case 'l': + ++q; #if defined(HAS_QUAD) || defined(HAS_LONG_DOUBLE) - if (*++q == 'l') { /* lld, llf */ + if (*q == 'l') { /* lld, llf */ intsize = 'q'; ++q; } |