package Foo; use strict; use warnings; our $VERSION = 1.23; 1; #### $ perl5.10.0 -e 'use Foo 0.001001' $ perl5.8.9 -e 'use Foo 0.001001' Foo version 0.001001 required--this is only version 0.001001 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.8.9 -Mversion -e 'use Foo 0.001001' #### $ perl5.10.0 -e 'use Foo v0.1_1' Foo version v0.1_1 required--this is only version v0.0_1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.8.0 -e 'use Foo v0.1_1' Foo version v0.1.1 required--this is only version v0.0.1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.6.2 -e 'use Foo v0.1_1' Foo version 0.011 required--this is only version 0 at -e line 1. BEGIN failed--compilation aborted at -e line 1. #### $ perl5.10.0 -e 'use Foo 0.000001' Foo version 0.000001 required--this is only version v0.0_1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.10.0 -e 'use Foo v0.0_1' $ perl5.8.9 -e 'use Foo v0.0_1' $ perl5.8.0 -e 'use Foo v0.0_1' Foo version v0.0.1 required--this is only version v0.0_1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.6.2 -e 'use Foo v0.0_1' Foo version 0.001 required--this is only version v0.0_1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. #### $ perl5.10.0 -e 'use Foo v0.1.1' $ perl5.8.9 -e 'use Foo v0.1.1' $ perl5.10.0 -e 'use Foo v0.2.1' Foo version v0.2.1 required--this is only version v0.1.1 at -e line 1. BEGIN failed--compilation aborted at -e line 1. $ perl5.8.9 -e 'use Foo v0.2.1' Foo version 0.002001 required--this is only version 0.001001 at -e line 1. BEGIN failed--compilation aborted at -e line 1.