This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
t/uni/overload.t: test for RT #3270
[perl5.git] / t / uni / overload.t
index 21d81ec..c534ecf 100644 (file)
@@ -9,7 +9,7 @@ BEGIN {
     set_up_inc( '../lib' );
 }
 
-plan(tests => 216);
+plan(tests => 217);
 
 package UTF8Toggle;
 use strict;
@@ -296,3 +296,13 @@ TODO: {
     print "ok\n";
 EOP
 }
+
+TODO: {
+    local $::TODO = 'RT #3270: Overloaded operators can not be treated as lvalues';
+    fresh_perl_is(<<'EOP', '', {stderr => 1}, 'RT #3270: Overloaded operator that returns an lvalue can be used as an lvalue');
+    use overload '.' => \&dot;
+    sub dot : lvalue {my ($obj, $method) = @_; $obj -> {$method};}
+    my $o  = bless {} => "main";
+    $o.foo = "bar";
+EOP
+}