+=head1 BUGS
+
+The following does not die:
+
+ # Evil.pm
+ package Evil;
+ use evil;
+
+ # A.pm
+ package A;
+ use Evil;
+
+ # B.pm
+ package B;
+ no evil ':intermediate';
+ use Evil;
+
+ # script.pl
+ #!/usr/bin/perl
+ use A;
+ use B;
+
+Since Evil was loaded by A, B does not load Evil and therefore does
+not detect that Evil is... evil. If we loaded B before A in script.pl,
+we would get an exception. So order of loading modules matters for
+intermediate and lax modes. Strict mode is unaffected by this bug.
+
+=head1 CAVEATS
+
+When using intermediate and lax modes, any evil modules loaded before
+the pragma is enabled are ignored. This is by design, to allow
+temporarily disabling the pragma. An example:
+
+ package MyModule;
+ no evil;
+ use Some::Module;
+ use Another::Module;
+
+ no evil ':disable';
+ use Evil::Module; # does not die
+ no evil;
+
+ use Some::More::Modules;
+ ...
+
+Correct functioning of this pragma depends critically on the evil bit
+being set properly. If a faulty evil module fails to C<use evil;>, the
+pragma will not function properly.
+