Much fun was spent today tracking down a mysterious bug. I even had fun shoving a coderef into @INC to find out what was loading the errant module. I've now reproduced a minimal test case. Once I put it together, the bug was clear, but before that, there were many red herrings. Here's a minimal test case.
package Package1; use base 'Exporter'; our @EXPORT_OK = qw/this that/; our %EXPORT_TAGS = ( all => [qw/this that/], ); sub this { 'this' } sub that { 'that' } 1;
And another package:
package Package2; use base 'Exporter'; use Package1 ':all'; our @EXPORT_OK = ( @Package1::EXPORT_OK, 'foobar' ); our %EXPORT_TAGS = %Package1::EXPORT_TAGS; push @{ $EXPORT_TAGS{all} } => 'foobar'; sub foobar { 'foobar' } 1;
Do you see the bug? That was very, very annoying, but fortunately the fix is easy. If you see the bug, post it as a spoiler.
Cheers,
Ovid
New address of my CGI Course.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: Another "Find the bug!" Node
by ikegami (Patriarch) on Sep 27, 2006 at 15:28 UTC | |
Re: Another "Find the bug!" Node
by herveus (Prior) on Sep 27, 2006 at 15:38 UTC | |
Re: Another "Find the bug!" Node
by jimt (Chaplain) on Sep 27, 2006 at 16:14 UTC | |
Re: Another "Find the bug!" Node
by diotalevi (Canon) on Sep 27, 2006 at 17:03 UTC | |
by ikegami (Patriarch) on Sep 27, 2006 at 17:08 UTC | |
by diotalevi (Canon) on Sep 27, 2006 at 17:49 UTC | |
by ikegami (Patriarch) on Sep 27, 2006 at 17:55 UTC | |
by diotalevi (Canon) on Sep 27, 2006 at 17:59 UTC | |
Re: Another "Find the bug!" Node
by shmem (Chancellor) on Sep 27, 2006 at 17:36 UTC | |
Re: Another "Find the bug!" Node
by ambrus (Abbot) on Sep 27, 2006 at 17:07 UTC | |
Re: Another "Find the bug!" Node
by talexb (Chancellor) on Sep 28, 2006 at 13:24 UTC | |
by Ovid (Cardinal) on Sep 28, 2006 at 13:33 UTC | |
by talexb (Chancellor) on Sep 28, 2006 at 15:03 UTC |
Back to
Meditations