http://www.perlmonks.org?node_id=1051297


in reply to Re: pack mangles utf output
in thread pack mangles utf output

Hmmm ... I converted the utf character to hex in both output lines and here's what I got:
without pack: e28093
with pack: c3a2c280c293

Could be my version of Perl (5.89) or my platform (Windows 7), but it is not working for me.

"Its not how hard you work, its how much you get done."

Replies are listed 'Best First'.
Re^3: pack mangles utf output
by vsespb (Chaplain) on Aug 28, 2013 at 15:50 UTC
    Yep, perl-5.8.9 under Linux affected
    $ perlbrew exec --with perl-5.8.9 perl -MDevel::Peek -e 'use utf8; Dump pack 'A20', "FREIGHT – INTRASTATE"'
    perl-5.8.9
    ==========
    SV = PV(0x1d14100) at 0x1d11350
      REFCNT = 1
      FLAGS = (PADTMP,POK,pPOK)
      PV = 0x1d69870 "FREIGHT \342\200\223 INTRASTA"\0
      CUR = 20
      LEN = 32
    
    
    $ perlbrew exec --with perl-5.10.0 perl -MDevel::Peek -e 'use utf8; Dump pack 'A20', "FREIGHT – INTRASTATE"'
    perl-5.10.0
    ==========
    SV = PV(0x1773098) at 0x178e288
      REFCNT = 1
      FLAGS = (PADTMP,POK,pPOK,UTF8)
      PV = 0x1798ca0 "FREIGHT \342\200\223 INTRASTATE"\0 UTF8 "FREIGHT \x{2013} INTRASTATE"
      CUR = 22
      LEN = 32