Um, compile time can happen at runtime if you use do/require
$ perl -d:Trace -e" use strict;"
$ perl -d:Trace -e" require strict;"
>> -e:1: require strict;
>> C:/perl/5.10.1/lib/strict.pm:3: $strict::VERSION = "1.04";
>> C:/perl/5.10.1/lib/strict.pm:6: unless ( __FILE__ =~ /(^|[\/\\])\Q$
+{\__PACKAGE__}\E\.pmc?$/ ) {
>> C:/perl/5.10.1/lib/strict.pm:6: unless ( __FILE__ =~ /(^|[\/\\])\Q$
+{\__PACKAGE__}\E\.pmc?$/ ) {
>> C:/perl/5.10.1/lib/strict.pm:12: my %bitmask = (
>> C:/perl/5.10.1/lib/strict.pm:32: my $default_bits = bits(qw(refs su
+bs vars));
>> C:/perl/5.10.1/lib/strict.pm:19: my $bits = 0;
>> C:/perl/5.10.1/lib/strict.pm:20: my @wrong;
>> C:/perl/5.10.1/lib/strict.pm:21: foreach my $s (@_) {
>> C:/perl/5.10.1/lib/strict.pm:22: push @wrong, $s unless exists
+$bitmask{$s};
>> C:/perl/5.10.1/lib/strict.pm:23: $bits |= $bitmask{$s} || 0
+;
>> C:/perl/5.10.1/lib/strict.pm:22: push @wrong, $s unless exists
+$bitmask{$s};
>> C:/perl/5.10.1/lib/strict.pm:23: $bits |= $bitmask{$s} || 0
+;
>> C:/perl/5.10.1/lib/strict.pm:22: push @wrong, $s unless exists
+$bitmask{$s};
>> C:/perl/5.10.1/lib/strict.pm:23: $bits |= $bitmask{$s} || 0
+;
>> C:/perl/5.10.1/lib/strict.pm:25: if (@wrong) {
>> C:/perl/5.10.1/lib/strict.pm:29: $bits;
>> C:/perl/5.10.1/lib/strict.pm:44: 1;
$
|