This is the mail archive of the
dwarf2@corp.sgi.com
mailing list for the dwarf2 project.
Re: Modifies vs. Replaces
- Subject: Re: Modifies vs. Replaces
- From: David Weatherford <david dot weatherford at sun dot com>
- Date: Mon, 26 Mar 2001 11:04:34 -0800
- Cc: DWARF2 at corp dot sgi dot com
- References: <01032610110347@gemevn.zko.dec.com>
- Reply-To: David Weatherford <david dot weatherford at sun dot com>
Ron 603-884-2088 wrote:
>
> Michael Eager wrote:
> >The Dwarf spec doesn't specify what a compiler should generate, nor
> >does it specify what a debugger should do with the data generated.
> >We continually leave the job of determining what action to take
> >given a specific Dwarf description to the debugger.
>
> Wow, these assertions leave me incredulous. Our job is to specify
> what descriptions mean. Surely we expect that a compiler will generate
> a description whose interpretation/meaning is consistent with the
> program and how it was compiled. And surely we expect that a debugger
> will take actions that are consistent with the specified interpretation
> of the description it encounters. While we don't specify "actions"
> as such, actions that are inconsistent with the DWARF specified
> interpretations are bugs...
[Mike, please correct me if I'm misrepresenting your intent....]
Mike was saying that the DWARF document describes a format which may
be used by DWARF producers (typically compilers) to communicate certain
aspects of the structure of some piece of a program to any interested
comsumers (typically debuggers). As such, the spec describes logical
contents and physical file format for several "sections" (typically
ELF file sections) along with certain conventions for using the tags
and attributes defined by the spec. It does *not* contain a set of
rules that a producer must follow given a certain input. That would
be the job of a language bindings document for a given language, none
of which has been written (to date), as far as I know.
Now, we all have in our heads typical (?) language bindings for the
languages that we are most familiar with, and we each try to make the
DWARF spec sufficiently flexible to support those bindings efficiently.
This is good. But those bindings are not part of the spec. The spec
describes mechanism, and has only a few italicized hints concerning
policy (i.e., bindings). Thus it is descriptive, but not proscriptive.
Did that make sense?
Dave W.