in reply to JSON::XS produces valid utf-8, and JSON doesn't - why?

Aha, now Devel::Peek output has some evidence:
OK:
SV = PV(0x35b92f0) at 0x34adca8
  REFCNT = 1
  FLAGS = (PADMY,POK,pPOK,UTF8)
  PV = 0x35b8970 "Hello \342\200\223 World"\0 UTF8 "Hello \x{2013} World"
  CUR = 15
  LEN = 24
SV = PV(0x35b92c0) at 0x34ada98
  REFCNT = 1
  FLAGS = (PADMY,POK,pPOK)
  PV = 0x35b8580 "\"Hello \342\200\223 World\""\0
  CUR = 19
  LEN = 40

CRASH:
SV = PV(0x35b9250) at 0x34b3030
  REFCNT = 1
  FLAGS = (PADMY,POK,pPOK,UTF8)
  PV = 0x35b8950 "Hello \342\200\223 World"\0 UTF8 "Hello \x{2013} World"
  CUR = 15
  LEN = 24
SV = PV(0x35b90a0) at 0x34b30d8
  REFCNT = 1
  FLAGS = (PADMY,POK,pPOK,UTF8)
  PV = 0x2f7fb60 "\"Hello \342\200\223 World\""\0 [UTF8 ""Hello \x{2013} World""]
  CUR = 19
  LEN = 40
  • Comment on Re: JSON::XS produces valid utf-8, and JSON doesn't - why?