(retracted by #12485)
Jarkko Hietaniemi [Wed, 17 Oct 2001 20:50:37 +0000 (20:50 +0000)]
More dollar$hiding.

p4raw-id: //depot/perl@12481

doio.c
perl.h
pp_sys.c

diff --git a/doio.c b/doio.c
index 0bfce2e..bdc845a 100644 (file)
--- a/doio.c
+++ b/doio.c
@@ -2091,7 +2091,7 @@ Perl_do_shmio(pTHX_ I32 optype, SV **mark, SV **sp)
     if (shmctl(id, IPC_STAT, &shmds) == -1)
        return -1;
     if (mpos < 0 || msize < 0 || mpos + msize > shmds.shm_segsz) {
-       SETERRNO(EFAULT,SS$_ACCVIO);            /* can't do as caller requested */
+       SETERRNO(EFAULT,VMS_SS_ACCVIO);         /* can't do as caller requested */
        return -1;
     }
     shm = (char *)shmat(id, (char*)NULL, (optype == OP_SHMREAD) ? SHM_RDONLY : 0);
diff --git a/perl.h b/perl.h
index ac7032f..c3baf1f 100644 (file)
--- a/perl.h
+++ b/perl.h
@@ -3931,18 +3931,27 @@ extern void moncontrol(int);
  * compilers which get huffy about dollars in identifiers,
  * which is common practise in VMS.  The definitions in the
  * non-VMS branch are not used -- but their only point is to
- * be something non-dollared. */
+ * be something non-dollared.  Neither are all instances of
+ * dollared variables hidden this way, only at the spots where
+ * non-VMS platforms see them. */
 #ifdef VMS
-#define VMS_SS_NORMAL SS$_NORMAL
-#define VMS_SS_IVCHAN SS$_IVCHAN
-#define VMS_RMS_IFI   RMS$_FAC
-#define VMS_RMS_IFI   RMS$_IFI
-#else
-#define VMS_LIB_INVARG EINVAL
-#define VMS_SS_NORMAL  0
-#define VMS_SS_IVCHAN  EBADF
-#define VMS_RMS_FAC    0
-#define VMS_RMS_IFI    EBADF
+#define VMS_LIB_INVARGV        LIB$_INVARG
+#define VMS_RMS_DIR    RMS$_DIR
+#define VMS_RMS_FAC    RMS$_FAC
+#define VMS_RMS_IFI    RMS$_IFI
+#define VMS_RMS_ISI    RMS$_ISI
+#define VMS_SS_ACCVIO  SS$_ACCVIO
+#define VMS_SS_IVCHAN  SS$_IVCHAN
+#define VMS_SS_NORMAL  SS$_NORMAL
+#else
+#define VMS_LIB_INVARG EINVAL
+#define VMS_RMS_DIR    EBADF
+#define VMS_RMS_FAC    0
+#define VMS_RMS_IFI    EBADF
+#define VMS_RMS_ISI    EBADF
+#define VMS_SS_ACCVIO  EFAULT
+#define VMS_SS_IVCHAN  EBADF
+#define VMS_SS_NORMAL  0
 #endif
 
 #endif /* Include guard */
index ae1baa5..516e725 100644 (file)
--- a/pp_sys.c
+++ b/pp_sys.c
@@ -3721,7 +3721,7 @@ PP(pp_open_dir)
     RETPUSHYES;
 nope:
     if (!errno)
-       SETERRNO(EBADF,RMS$_DIR);
+        SETERRNO(EBADF,VMS_RMS_DIR);
     RETPUSHUNDEF;
 #else
     DIE(aTHX_ PL_no_dir_func, "opendir");
@@ -3776,7 +3776,7 @@ PP(pp_readdir)
 
 nope:
     if (!errno)
-       SETERRNO(EBADF,RMS$_ISI);
+       SETERRNO(EBADF,VMS_RMS_ISI);
     if (GIMME == G_ARRAY)
        RETURN;
     else
@@ -3807,7 +3807,7 @@ PP(pp_telldir)
     RETURN;
 nope:
     if (!errno)
-       SETERRNO(EBADF,RMS$_ISI);
+       SETERRNO(EBADF,VMS_RMS_ISI);
     RETPUSHUNDEF;
 #else
     DIE(aTHX_ PL_no_dir_func, "telldir");
@@ -3830,7 +3830,7 @@ PP(pp_seekdir)
     RETPUSHYES;
 nope:
     if (!errno)
-       SETERRNO(EBADF,RMS$_ISI);
+       SETERRNO(EBADF,VMS_RMS_ISI);
     RETPUSHUNDEF;
 #else
     DIE(aTHX_ PL_no_dir_func, "seekdir");
@@ -3851,7 +3851,7 @@ PP(pp_rewinddir)
     RETPUSHYES;
 nope:
     if (!errno)
-       SETERRNO(EBADF,RMS$_ISI);
+       SETERRNO(EBADF,VMS_RMS_ISI);
     RETPUSHUNDEF;
 #else
     DIE(aTHX_ PL_no_dir_func, "rewinddir");