Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: "Eli Zaretskii" <eliz@gnu.org>
To: gdb-patches@sources.redhat.com
Subject: Re: [RFC] fullname attribute for GDB/MI stack frames
Date: Wed, 04 May 2005 20:32:00 -0000	[thread overview]
Message-ID: <01c550e8$Blat.v2.4$3ed1d1a0@zahav.net.il> (raw)
In-Reply-To: <20050504180632.GA28488@white> (message from Bob Rossi on Wed, 4 May 2005 14:06:32 -0400)

> Date: Wed, 4 May 2005 14:06:32 -0400
> From: Bob Rossi <bob@brasko.net>
> Cc: gdb-patches@sources.redhat.com
> 
> > > This is very true. This will break CGDB for instance. It use's the
> > > fullname as a unique key to a file. If GDB says that c:\abc has 2
> > > breakpoints and \abc has 1, CGDB will have 2 source files the user can
> > > choose and each will contain it's own breakpoints.
> > 
> > That's just a bug in CGDB (or at least in its Windows port, if it
> > exists): it should use smarter checks for identity of files, like the
> > equivalent of the Posix inode test.
> 
> Now that's just a difference of opinion.

Well, of course it's a difference of opinion!  The question is whose
opinion is more correct and based on more experience of dragging Posix
programs screaming and kicking into the wonderful world of Microsoft
filesystems.

More to the point: are you saying that CGDB is comparing file names
using strcmp, and if so, are you claiming that the code which does
that is ``correct'', including on Windows?  My experience tells me
that the assumption that file names can be compared as strings is very
Posix-centric, and breaks easily on Windows.  If you compare file
names as strings, you will fail to find that d:/foo and d:\Foo are the
same file, for example.  You will also fail to find that d:/foo/bar
and f:/bar are the same file because f: is a result of the SUBST
command.  And then there's the case of a network share that is mapped
to a drive letter, so \\foo\bar\baz and x:/baz, say, could both point
to the same file.

I could go on and on like that, but the bottom line is that file names
are not strings when you wish to check them for equality.  If CGDB
does that, it needs to be fixed, at least on Windows.  (I'd also fix
it on Unix, since even on Unix there are hardlinks that exibit similar
issues.)

> As it stands now, the doco says that the fullname is absolute, and
> therefor, CGDB expects that filename to be a unqiue key.

The file names \abc and d:foo _are_ absolute, they are just not
``fully qualified''.  These two notions are identical on Unix, but not
on Windows.  It's a mess that we shouldn't enter without a very good
reason, and the one which started this thread is far from that.


  reply	other threads:[~2005-05-04 20:32 UTC|newest]

Thread overview: 103+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-04-01 19:13 Dennis Brueni
2005-04-02  9:22 ` Eli Zaretskii
2005-04-30 19:18 ` Daniel Jacobowitz
2005-05-01  2:19   ` Bob Rossi
2005-05-01 18:24     ` Eli Zaretskii
2005-05-01 18:34       ` Bob Rossi
2005-05-01 19:02         ` Daniel Jacobowitz
2005-05-02  0:55           ` Bob Rossi
2005-05-02  0:54       ` Bob Rossi
2005-05-02  0:58         ` Daniel Jacobowitz
2005-05-02 19:30         ` Eli Zaretskii
2005-05-02 19:36           ` Bob Rossi
2005-05-02 19:52             ` Eli Zaretskii
2005-05-02 19:55               ` Daniel Jacobowitz
2005-05-02 20:42                 ` Eli Zaretskii
2005-05-02 20:49                   ` Daniel Jacobowitz
2005-05-02 21:20                     ` Bob Rossi
2005-05-03  3:49                       ` Eli Zaretskii
2005-05-03  3:42                     ` Eli Zaretskii
2005-05-03  3:46                       ` Daniel Jacobowitz
2005-05-03 19:36                         ` Eli Zaretskii
2005-05-03 19:49                           ` Daniel Jacobowitz
2005-05-03 20:05                             ` Bob Rossi
2005-05-03 20:49                             ` Eli Zaretskii
2005-05-04 13:34                               ` Daniel Jacobowitz
2005-05-04 13:51                                 ` Bob Rossi
2005-05-04 13:52                                   ` Daniel Jacobowitz
2005-05-04 17:51                                   ` Eli Zaretskii
2005-05-04 18:06                                     ` Bob Rossi
2005-05-04 20:32                                       ` Eli Zaretskii [this message]
2005-05-04 18:05                                 ` Eli Zaretskii
2005-05-04 18:32                                   ` Daniel Jacobowitz
2005-05-04 20:53                                     ` Eli Zaretskii
2005-05-04 21:07                                       ` Daniel Jacobowitz
2005-05-04 21:42                                         ` Eli Zaretskii
2005-05-04 22:01                                           ` Daniel Jacobowitz
2005-05-04 23:42                                             ` Christopher Faylor
2005-05-05  4:15                                             ` Eli Zaretskii
2005-05-04 23:40                                         ` Christopher Faylor
2005-05-05  0:05                                           ` Bob Rossi
2005-05-05  4:02                                           ` Eli Zaretskii
2005-05-04 23:37                                       ` Christopher Faylor
2005-05-05  4:05                                         ` Eli Zaretskii
2005-05-03 19:57                           ` Bob Rossi
2005-05-03 21:15                             ` Eli Zaretskii
2005-05-03 21:39                               ` Christopher Faylor
2005-05-03 22:24                                 ` Daniel Jacobowitz
2005-05-03 22:27                                   ` Christopher Faylor
2005-05-04  2:32                                     ` Bob Rossi
2005-05-04  3:05                                       ` Christopher Faylor
2005-05-04 17:42                                       ` Eli Zaretskii
2005-05-04  4:12                                   ` Eli Zaretskii
2005-05-04 13:00                                     ` Daniel Jacobowitz
2005-05-04  4:27                                 ` Eli Zaretskii
2005-05-04 11:48                                   ` Bob Rossi
2005-05-04 14:55                                     ` Christopher Faylor
2005-05-04 15:02                                       ` Bob Rossi
2005-05-04 17:43                                       ` Eli Zaretskii
2005-05-04 17:58                                         ` Christopher Faylor
2005-05-04 18:29                                           ` Eli Zaretskii
2005-05-04 20:39                                           ` Eli Zaretskii
2005-05-04 23:34                                             ` Christopher Faylor
2005-05-05  4:08                                               ` Eli Zaretskii
2005-05-04 13:45                                   ` Daniel Jacobowitz
2005-05-04 20:20                                     ` Eli Zaretskii
2005-05-04 20:30                                       ` Daniel Jacobowitz
2005-05-04 21:24                                         ` Eli Zaretskii
2005-05-04 14:52                                   ` Christopher Faylor
2005-05-04 17:48                                     ` Eli Zaretskii
2005-05-04 18:03                                       ` Christopher Faylor
2005-05-04 18:26                                         ` Eli Zaretskii
2005-05-03 21:39                               ` Bob Rossi
2005-05-03 22:14                                 ` Christopher Faylor
2005-05-04  4:08                                   ` Eli Zaretskii
2005-05-04 13:39                                     ` Daniel Jacobowitz
2005-05-04 17:49                                       ` Eli Zaretskii
2005-05-04  4:18                                 ` Eli Zaretskii
2005-05-03 22:50                           ` Bob Rossi
2005-05-04  4:04                             ` Eli Zaretskii
2005-05-05 17:20       ` Bob Rossi
2005-05-05 18:04         ` Eli Zaretskii
2005-05-05 19:18         ` Christopher Faylor
2005-05-05 23:53           ` Bob Rossi
2005-05-05 16:22     ` Bob Rossi
2005-05-05 16:26       ` Daniel Jacobowitz
2005-05-05 16:46         ` Bob Rossi
2005-05-05 17:17           ` Daniel Jacobowitz
2005-05-18  4:44   ` Daniel Jacobowitz
  -- strict thread matches above, loose matches on Subject: below --
2005-05-05 15:15 Dennis Brueni
2005-05-05 15:25 ` Bob Rossi
2005-05-05 15:28   ` Daniel Jacobowitz
2005-05-05 15:32     ` Bob Rossi
2005-05-02 14:22 Dennis Brueni
2005-05-02 19:38 ` Eli Zaretskii
2005-04-01 15:09 Dennis Brueni
2005-03-29 20:43 Dennis Brueni
2005-03-30  4:46 ` Eli Zaretskii
2005-04-01  1:41 ` Bob Rossi
2005-03-26 13:43 Eli Zaretskii
2005-03-26 13:50 ` Bob Rossi
2005-03-24 20:49 Dennis Brueni
2005-03-23 22:22 Dennis Brueni
2005-03-23 22:34 ` Bob Rossi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='01c550e8$Blat.v2.4$3ed1d1a0@zahav.net.il' \
    --to=eliz@gnu.org \
    --cc=gdb-patches@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox