>>>> AFAIK components don't equal subs directly, so doing @q = >>>> $m->comp('foo') >>>> isn't the same as @q = foo(); >>> >>>Actually, that should be equivalent. >> >> >> Absolutely. >> >> In fact calling $m->comp('SELF:want) from within a perl block does >> the right thing, that is does not make Perl think that wantarray is >> in effect. >> >> It's only <% $m->comp('foo') %> where things go awry. >> >> >> The bug appears to be in how $m->print works. But I don't really get >> the whole stack/buffer thing. > > i for one appreciate that <% %> is in list context (wantarray), which > makes perfect sense since it is essentially a print statement, and args to > print() are always in list context. > > i find it more odd that <& &> and %$m->comp() have wantarray defined > (though at least it is false!) when they are apparently in void context.
my mistake! they are correctly in void context -- i was seeing a side-effect of a locally implemented wrapper. ;) ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ Mason-users mailing list Mason-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mason-users