2012-01-04 10 views
5

¿Cómo puedo resolver este caso de 'Uso inútil de una variable en un contexto vacío'? se utilizará (línea 17)¿Cómo puedo resolver este caso de 'Uso inútil de una variable en un contexto vacío'?

sub next { 
    my $page = shift; 

    my $next_stage = $page->{tree}->{nextstage}; 
    my $prev_stage = $page->{stage}; 

    print "Moving from: $prev_stage to $next_stage.\n" if ($DEBUG); 

    if ($next_stage eq "end") { 
     serialize_grabber_conf_answers($page, $config_file_tmp); 
     $grabber_initialized = 1; 
     return FALSE; 
    } 

    unless (defined ($page->{next_page})) { 
     serialize_grabber_conf_answers($page, $config_file_tmp); 
     my $next_page = ($page, $config_file_tmp, $next_stage); 
     $next_page->{stage} = $next_stage; 
     $page->{next_page} = $next_page; 
     $next_page->{prev_page} = $page; 
    } 

    return FALSE; 
    } 

Gracias

+3

http://perldoc.perl.org/perldiag.html y http://perldoc.perl.org/diagnostics.html – toolic

+1

[perldata] (http://perldoc.perl.org/perldata.html#List -value-constructors), [perlfaq4] (http://perldoc.perl.org/perlfaq4.html#What-is-the-difference-between-a-list-and-an-array?) –

+1

Tiene otros problemas . next_page no parece ser una referencia hash. ¿Estás usando 'estricto'? – runrig

Respuesta

9

La línea problemático es

my $next_page = ($page, $config_file_tmp, $next_stage); 

va a asignar a un escalar, por lo que sólo el último miembro de la lista. Los miembros anteriores son desechados: uso inútil de una variable.

Cuestiones relacionadas