[M3devel] put full paths to source files in debug info
Tony Hosking
hosking at cs.purdue.edu
Thu Feb 28 20:13:48 CET 2008
Sorry, read your message too quickly. Yes, links might be nice.... :-)
On Feb 28, 2008, at 1:47 PM, Jay wrote:
> Links, not diffs.
>
> - Jay
>
>
>
> CC: m3devel at elegosoft.com
> From: hosking at cs.purdue.edu
> To: jayk123 at hotmail.com
> Subject: Re: [M3devel] put full paths to source files in debug info
> Date: Thu, 28 Feb 2008 09:09:14 -0500
>
> No, please don't do that!!!! I hate it when I get a huge file of
> diffs. The comment should be descriptive enough to let me know if I
> care about the diffs or not. As an emacs user it is trivial for me
> to browse diffs there if I *really* care. But e-mail is the *wrong*
> place for diffs!!
>
> On Feb 28, 2008, at 4:25 AM, Jay wrote:
>
> Is it easy enough for the commit mails to contain links to view all
> of the diffs described?
> That's be super duper nice.
> I find browsing the cvsweb very inefficient.
>
> - Jay
>
>
> From: jayk123 at hotmail.com
> To: m3devel at elegosoft.com
> Subject: FW: put full paths to source files in debug info
> Date: Thu, 28 Feb 2008 08:59:47 +0000
>
> truncated again! and possibly misformated..
>
>
>
>
> From: jayk123 at hotmail.com
> To: m3devel at elegosoft.com
> Subject: RE: put full paths to source files in debug info
> Date: Thu, 28 Feb 2008 08:44:11 +0000
>
> pps: "webinfo" (Reactor?) and assertion failures are affected by
> this also, but not fully.
>
> Before you would have gotten:
>
> ***
> *** runtime error:
> *** <*ASSERT*> failed.
> *** file "WaitProcessCygwin.m3", line 16
> ***
>
> but now you get:
>
> ***
> *** runtime error:
> *** <*ASSERT*> failed.
> *** file "..\src\thread\WIN32\WaitProcessCygwin.m3", line 16
> ***
>
> I'd say the realpath call (or whatever the portable Modula-3 library
> call is) should be moved up to m3front to address these, and the
> parse.c change undone.
>
> As well, I believe resolving symlinks is happening too but that
> wasn't the point, so something instead of realpath might be
> preferable. Like, just see if the string starts ".\" or "..\", it
> will almost always start "..\", and if so, prepend current working
> directory and then workout the dots.
>
> It may also be reasonable to provide paths to the compiler to remove
> from the starts of paths, which would likely address the symlink
> issue, since they are more likely to be nearer the start of the path
> than the middle or end. As well as partly the privacy/size/same-
> across-machines issues.
>
> In any case, I think this easy small change is already very useful
> progress. Or does everyone else just fill up .gdbinit with dir
> commands? It seems to me that it shouldn't even that difficult, even
> if it isn't very difficult.
>
> Agreed?
>
> - Jay
>
> From: jayk123 at hotmail.com
> To: m3devel at elegosoft.com
> Subject: re: put full paths to source files in debug info
> Date: Thu, 28 Feb 2008 08:31:32 +0000
>
> ps: does anyone care that binaries built from different cvs
> checkouts, but otherwise identical source, will no longer match,
> unless perhaps they are "stripped"?
>
> If so, or if any of the other issues bug people, or any other
> problem is brought up or discovered, this can be made a command line
> option. I will always turn it on. :)
>
> - Jay
>
>
> > Date: Thu, 28 Feb 2008 09:23:22 +0000
> > To: m3commit at elegosoft.com
> > From: jkrell at elego.de
> > Subject: [M3commit] CVS Update: cm3
> >
> > CVSROOT: /usr/cvs
> > Changes by: jkrell at birch. 08/02/28 09:23:22
> >
> > Modified files:
> > cm3/m3-sys/m3cc/gcc/gcc/m3cg/: parse.c
> > cm3/m3-sys/m3front/src/misc/: Coverage.m3 Host.i3 Host.m3
> > Scanner.m3
> >
> > Log message:
> > put full paths to source files in debug info
> >
> > This has the minor downsides of:
> > 1) grows the debug info (it is already huge; who is counting?)
> > 2) reveals file system layout in debug info (privacy?)
> > 3) does it inhibit debugging files from other people's machines or
> does gdb dir still work?
> >
> > but definitely makes for a more pleasant debugging experience when
> > debugging stuff you have built yourself.
> >
> > The linear searching to see if a name has been allocated a number
> yet
> > will obviously slow way down due to a large increase in common
> prefixes,
> > but that should be a hash table anyway. Linear search is lame.
> > (or a trie, but working from the ends of the strings, minus the
> last one or few
> > characters, due to common prefixes as well as common suffixes)
> >
> > Note that both m3front and m3cc changes are needed as m3front has
> paths
> > relative to the current working directory or such.
> >
> > For most packages, you can get by without the m3front change and
> just prepend
> > "../src/" to the path in m3cc, but that doesn't work for
> hierarchical packages
> > such as libm3 and m3core which I am debugging.
>
> Need to know the score, the latest news, or you need your Hotmail®-
> get your "fix". Check it out.
>
> Helping your favorite cause is as easy as instant messaging. You IM,
> we give. Learn more.
>
>
> Need to know the score, the latest news, or you need your Hotmail®-
> get your "fix". Check it out.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20080228/bb53535e/attachment-0002.html>
More information about the M3devel
mailing list