In perl.git, the branch nicholas/microperl has been updated <http://perl5.git.perl.org/perl.git/commitdiff/2c9b7a2f7042ead3b7e517dc10b085c938a505b4?hp=22e32a1fe5684941fd3dfbec8631c680f192fc6a>
- Log ----------------------------------------------------------------- commit 2c9b7a2f7042ead3b7e517dc10b085c938a505b4 Author: Nicholas Clark <[email protected]> Date: Wed Mar 23 12:18:20 2011 +0000 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. ----------------------------------------------------------------------- Summary of changes: sv.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletions(-) diff --git a/sv.c b/sv.c index 9351076..9ea0b50 100644 --- a/sv.c +++ b/sv.c @@ -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; } -- Perl5 Master Repository
