$ cat junk.pl #!/usr/bin/perl -- use strict; use warnings; sub Fl::new { return } my $url ; my %swf = ('file' => new Fl ('Myflash.swf'), 'url' => $url); use Data::Dumper; print Dumper( \%swf ); __END__ $ perl junk.pl Odd number of elements in hash assignment at junk.pl line 9. Use of uninitialized value $url in list assignment at junk.pl line 9. $VAR1 = { '' => undef, 'file' => 'url' }; $ $ cat junk2.pl #!/usr/bin/perl -- use strict; use warnings; sub Fl::new { return } my $url ; my %swf = ('file' => scalar new Fl ('Myflash.swf'), 'url' => $url); use Data::Dumper; print Dumper( \%swf ); __END__ $ perl junk2.pl $VAR1 = { 'url' => undef, 'file' => undef };