Split symbol name instead of munging it in-place
Dagfinn Ilmari Mannsåker [Wed, 6 Feb 2013 11:45:57 +0000 (11:45 +0000)]
It's actually an object (with string overload), so this avoids an
"Attempt to use reference as lvalue in substr" warning on perl 5.16.

lib/Devel/REPL/Plugin/CompletionDriver/LexEnv.pm

index 133baaf..827efb9 100644 (file)
@@ -16,8 +16,8 @@ around complete => sub {
   return $orig->(@_)
     unless $last->isa('PPI::Token::Symbol');
 
-  my $sigil = substr($last, 0, 1, '');
-  my $re = qr/^\Q$last/;
+  my ($sigil, $name) = split(//, $last, 2);
+  my $re = qr/^\Q$name/;
 
   return $orig->(@_),
          # ReadLine is weirdly inconsistent