Mail Archives: djgpp-workers/2003/09/06/15:25:18
> Date: Fri, 05 Sep 2003 22:25:54 +0100
> From: Richard Dawe <rich AT phekda DOT freeserve DOT co DOT uk>
> > >
> > > POSIX mandates that.
> >
> > Well, DOS isn't a Posix system ;-) The fact that "c:" and "c:/" are
> > two different things is one of the frequent gotchas in ported
> > programs. So the Posix compatibility is already broken here, and it
> > ain't our fault.
>
> /dev/c is something we've introduced. I don't see why /dev/c shouldn't be
> POSIX-compliant, just because c: and c:/ are different things.
I thought I explained that: because the OS we are running on isn't
Posix.
> > "c:" isn't a relative path, it's 99% absolute path, as far as Posix
> > semantics is concerned.
>
> How about c:foo?
>
> Actually I think of c: being a relative path - something ../../dev/c/foo/bar.
It is closer to an absolute file name in the sense that you don't
need to prepend the current directory to it.
> Part of my objection is because of me maintaining fileutils. Wearing my
> fileutils hat I look at a path and think "is that relative". So far we have:
>
> 1a. Starts with a slash -> absolute.
> 1b. Oops, unless it's just /dev/<letter> -> relative.
> 1c. But /dev/<letter>/something-else -> absolute.
> 2a. Starts with a drive-letter, then a slash -> absolute.
> 2b. Starts with a drive-letter, then no slash. Absolute? Relative? Really we
> need to expand it, to make it absolute. Or convert it to a ../../../dev/c/...
> path to make it relative. Aargh.
If you accept my point of view, then---puff---all those problems go
away. All the cases you mention above are absolute file names,
period.
- Raw text -