On 4/11/2011 11:29 AM, Leonhard Brenner wrote:
In 2.4.7 the following used to work:

my $max = $len->max;
my $mask = xvals($max)<  $len->(*1);
my $rows = $a->range($pos->(*1),$max,'t')->mv($pos->ndims,0);
$rows *= $mask; #This is the line in question
my $sums = $rows->sumover;

In 2.4.8 I need to copy the range first:

my $max = $len->max;
my $mask = xvals($max)<  $len->(*1);
my $rows = $a->range($pos->(*1),$max,'t')->mv($pos->ndims,0)->copy;
$rows *= $mask;
my $sums = $rows->sumover;

Or I need to expand the expression:

my $max = $len->max;
my $mask = xvals($max)<  $len->(*1);
my $rows = $a->range($pos->(*1),$max,'t')->mv($pos->ndims,0);
$rows = $rows * $mask;
my $sums = $rows->sumover;

Not a big deal but since there is no error produced I thought I'd point it
out because
this can break some existing code.

Do you have simple $len and $a that can be used
to reproduce the problem?

Thanks,
Chris

_______________________________________________
Perldl mailing list
[email protected]
http://mailman.jach.hawaii.edu/mailman/listinfo/perldl

Reply via email to