Is the following the correct code sequence to return an array
reference or nothing (if result is 0) from an XS function?

       PPCODE:
         AV *result = 0;
         if (some_condition) {
             result = newAV();
             av_push(result, some_value);
         }
         if (result) {
             EXTEND(SP, 1);
             PUSHs(newRV_inc((SV*)result));
         }

It's not mentioned in perlxs, but some CPAN modules seem to use this.

-- 
Florian Weimer                <fwei...@bfk.de>
BFK edv-consulting GmbH       http://www.bfk.de/
Kriegsstraße 100              tel: +49-721-96201-1
D-76133 Karlsruhe             fax: +49-721-96201-99

Reply via email to