#!/usr/bin/perl -l use IO::Scalar; my $x = ""; { local *STDERR; tie *STDERR, 'IO::Scalar', \$x; print STDERR "foo"; untie *STDERR } print STDERR "bar"; print "caught: $x"; __END__ bar caught: foo