public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [commit] dos drive spec support in filenames.h
@ 2010-04-14 22:11 Doug Evans
  0 siblings, 0 replies; only message in thread
From: Doug Evans @ 2010-04-14 22:11 UTC (permalink / raw)
  To: binutils

Hi.

I've checked this in.  Approved on gcc-patches.


2010-04-14  Doug Evans  <dje@google.com>

       * filenames.h (HAS_DRIVE_SPEC, STRIP_DRIVE_SPEC): New macros.

Index: filenames.h
===================================================================
RCS file: /cvs/src/src/include/filenames.h,v
retrieving revision 1.5
diff -u -p -r1.5 filenames.h
--- filenames.h 21 Mar 2008 23:40:18 -0000      1.5
+++ filenames.h 12 Apr 2010 17:19:32 -0000
@@ -5,7 +5,7 @@
   use forward- and back-slash in path names interchangeably, and
   some of them have case-insensitive file names.

-   Copyright 2000, 2001, 2007 Free Software Foundation, Inc.
+   Copyright 2000, 2001, 2007, 2010 Free Software Foundation, Inc.

 This file is part of BFD, the Binary File Descriptor library.

@@ -37,17 +37,27 @@ extern "C" {
 #endif

 #define IS_DIR_SEPARATOR(c)    ((c) == '/' || (c) == '\\')
+
+#define HAS_DRIVE_SPEC(f)      (((f)[0]) && ((f)[1] == ':'))
+
+/* Remove the drive spec from F, assuming HAS_DRIVE_SPEC (f).
+   The result is a pointer to the remainder of F.  */
+#define STRIP_DRIVE_SPEC(f)    ((f) + 2)
+
 /* Note that IS_ABSOLUTE_PATH accepts d:foo as well, although it is
   only semi-absolute.  This is because the users of IS_ABSOLUTE_PATH
   want to know whether to prepend the current working directory to
   a file name, which should not be done with a name like d:foo.  */
-#define IS_ABSOLUTE_PATH(f)    (IS_DIR_SEPARATOR((f)[0]) || (((f)[0]) &&
((f)[1] == ':')))
+#define IS_ABSOLUTE_PATH(f)    (IS_DIR_SEPARATOR((f)[0]) || HAS_DRIVE_SPEC(f))

 #else  /* not DOSish */

 #define IS_DIR_SEPARATOR(c)    ((c) == '/')
 #define IS_ABSOLUTE_PATH(f)    (IS_DIR_SEPARATOR((f)[0]))

+#define HAS_DRIVE_SPEC(f)      (0)
+#define STRIP_DRIVE_SPEC(f)    (f)
+
 #endif /* not DOSish */

 extern int filename_cmp (const char *s1, const char *s2);

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2010-04-14 22:11 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-04-14 22:11 [commit] dos drive spec support in filenames.h Doug Evans

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).