summaryrefslogtreecommitdiff
path: root/op.c
diff options
context:
space:
mode:
authorJarkko Hietaniemi <jhi@iki.fi>2002-03-03 15:06:55 +0000
committerJarkko Hietaniemi <jhi@iki.fi>2002-03-03 15:06:55 +0000
commitbfc3ae4fccf261f3ffcd77b5f339738dcd4ce290 (patch)
tree58fd0007f1add7960c17fe13743b93b7593d6c28 /op.c
parent8c2040069d8b319e6bc1081d9acb663977b2bc8f (diff)
downloadperl-bfc3ae4fccf261f3ffcd77b5f339738dcd4ce290.tar.gz
Remove the bogus "incorrect case" warning completely.
The problem exists, but the cure, in which ever form it will be, needs to be something more subtle. p4raw-id: //depot/perl@14962
Diffstat (limited to 'op.c')
-rw-r--r--op.c23
1 files changed, 16 insertions, 7 deletions
diff --git a/op.c b/op.c
index 1af8113669..9b944c3508 100644
--- a/op.c
+++ b/op.c
@@ -3451,13 +3451,22 @@ Perl_utilize(pTHX_ int aver, I32 floor, OP *version, OP *id, OP *arg)
newSTATEOP(0, Nullch, imop) ));
if (packname) {
-#ifdef WIN32
- if (ckWARN(WARN_MISC) && !gv_stashpvn(packname, packlen, FALSE)) {
- Perl_warner(aTHX_ WARN_MISC,
- "Package `%s' not found "
- "(did you use the incorrect case?)", packname);
- }
-#endif
+ /* The "did you use incorrect case?" warning used to be here.
+ * The problem is that on case-insensitive filesystems one
+ * might get false positives for "use" (and "require"):
+ * "use Strict" or "require CARP" will work. This causes
+ * portability problems for the script: in case-strict
+ * filesystems the script will stop working.
+ *
+ * The "incorrect case" warning checked whether "use Foo"
+ * imported "Foo" to your namespace, but that is wrong, too:
+ * there is no requirement nor promise in the language that
+ * a Foo.pm should or would contain anything in package "Foo".
+ *
+ * There is very little Configure-wise that can be done, either:
+ * the case-sensitivity of the build filesystem of Perl does not
+ * help in guessing the case-sensitivity of the runtime environment.
+ */
safefree(packname);
}