http://qs1969.pair.com?node_id=81418

kmacleod has asked for the wisdom of the Perl Monks concerning the following question:

I'm trying to use stringify overload on a tied XS variable (Perl 5.6.0) and I can't figure out how to turn on 'fallback'.

I was able to find SvAMAGIC_on() to turn on overload, and I provide a stringify method ('""') that works when you do "$ref", but I need

  $ref eq "some string"
to work also, and that means setting fallback => 1, which I can't figure out how to do to my XS-tied variable. My tie'ing sequence looks roughly like this:
      HV *hash = newHV();
      SV *hashref = newRV_noinc((SV*)hash);
      SV *tie = newSViv((IV)value);
      SV *tieref = newRV_noinc(tie);

      sv_bless(tieref, hash_tie_stash);
      sv_bless(hashref, xml_attribute_stash);
      SvAMAGIC_on(hashref);
      hv_magic(hash, (GV *)tieref, 'P');
      SvREFCNT_dec(tieref);
      return hashref;

Devel::Peek isn't giving me a clue (afaics) as to what magic is different between my XS-tied var and a pure-Perl tied var with overload magic.

Any clues appreciated!