-/* $RCSfile: util.h,v $$Revision: 4.0.1.1 $$Date: 91/06/07 12:11:00 $
+/* util.h
*
- * Copyright (c) 1991, Larry Wall
+ * Copyright (C) 1991, 1992, 1993, 1999, 2001, 2002,
+ * by Larry Wall and others
*
* You may distribute under the terms of either the GNU General Public
* License or the Artistic License, as specified in the README file.
*
- * $Log: util.h,v $
- * Revision 4.0.1.1 91/06/07 12:11:00 lwall
- * patch4: new copyright notice
- *
- * Revision 4.0 91/03/20 01:56:48 lwall
- * 4.0 baseline.
- *
*/
-EXT int *screamfirst INIT(Null(int*));
-EXT int *screamnext INIT(Null(int*));
+#ifdef VMS
+# define PERL_FILE_IS_ABSOLUTE(f) \
+ (*(f) == '/' \
+ || (strchr(f,':') \
+ || ((*(f) == '[' || *(f) == '<') \
+ && (isALNUM((f)[1]) || strchr("$-_]>",(f)[1])))))
-char *safemalloc();
-char *saferealloc();
-char *cpytill();
-char *instr();
-char *fbminstr();
-char *screaminstr();
-void fbmcompile();
-char *savestr();
-void setenv();
-int envix();
-void growstr();
-char *ninstr();
-char *rninstr();
-char *nsavestr();
-FILE *mypopen();
-int mypclose();
-#ifndef HAS_MEMCPY
-#ifndef HAS_BCOPY
-char *bcopy();
-#endif
-#ifndef HAS_BZERO
-char *bzero();
-#endif
-#endif
-unsigned long scanoct();
-unsigned long scanhex();
+#else /* !VMS */
+# if defined(WIN32) || defined(__CYGWIN__)
+# define PERL_FILE_IS_ABSOLUTE(f) \
+ (*(f) == '/' || *(f) == '\\' /* UNC/rooted path */ \
+ || ((f)[0] && (f)[1] == ':')) /* drive name */
+# else /* !WIN32 */
+# ifdef NETWARE
+# define PERL_FILE_IS_ABSOLUTE(f) \
+ (((f)[0] && (f)[1] == ':') /* drive name */ \
+ || ((f)[0] == '\\' && (f)[1] == '\\') /* UNC path */ \
+ || ((f)[3] == ':')) /* volume name, currently only sys */
+# else /* !NETWARE */
+# if defined(DOSISH) || defined(EPOC) || defined(__SYMBIAN32__)
+# define PERL_FILE_IS_ABSOLUTE(f) \
+ (*(f) == '/' \
+ || ((f)[0] && (f)[1] == ':')) /* drive name */
+# else /* NEITHER DOSISH NOR EPOCISH NOR SYMBIANISH */
+# ifdef MACOS_TRADITIONAL
+# define PERL_FILE_IS_ABSOLUTE(f) (strchr(f, ':') && *(f) != ':')
+# else /* !MACOS_TRADITIONAL */
+# define PERL_FILE_IS_ABSOLUTE(f) (*(f) == '/')
+# endif /* MACOS_TRADITIONAL */
+# endif /* DOSISH */
+# endif /* NETWARE */
+# endif /* WIN32 */
+#endif /* VMS */