From: Josh Triplett <josh@freedesktop.org>
To: Josh Triplett <josht@linux.vnet.ibm.com>
Cc: Rob Taylor <rob.taylor@codethink.co.uk>, linux-sparse@vger.kernel.org
Subject: Re: [PATCH] c2xml
Date: Wed, 27 Jun 2007 22:45:05 -0700 [thread overview]
Message-ID: <46834AE1.8010107@freedesktop.org> (raw)
In-Reply-To: <1182970187.8970.145.camel@josh-work.beaverton.ibm.com>
[-- Attachment #1: Type: text/plain, Size: 2624 bytes --]
Josh Triplett wrote:
> On Wed, 2007-06-27 at 14:51 +0100, Rob Taylor wrote:
>> Here's something I've hacked up for my work on gobject-introspection
>> [1]. It basically dumps the parse tree for a given file as simplistic
>> xml, suitable for further transformation by something else (in my case,
>> some python).
>>
>> I'd expect this to also be useful for code navigation in editors and c
>> refactoring tools, but I've really only focused on my needs for c api
>> description.
>>
>> There are 3 patches here. The first introduces a field in the symbol
>> struct for the end position of the symbol. I've added this in my case
>> for documentation generation, but again I think it'd be useful in other
>> cases. The next introduces a sparse_keep_tokens, which parses a file,
>> but doesn't free the tokens after parsing. The final one adds c2xml and
>> the DTD for the xml format. It builds conditionally on whether libxml2
>> is available.
>>
>> All feedback appreciated!
>
> Wow. Very nice. I can already think of several other uses for this.
[...]
> * Please consider including information from the context and
> address space attributes.
Actually, don't worry about that one; we can always add it later, and I'd love
to see this get merged as soon as possible.
> * Rather than the current base-type and base-type-builtin
> mechanism, you might consider having designated IDs for the base
> types and using those in base-type. You could even output the
> builtin types if you want. I don't know if this makes things
> easier or harder for consumers of the output; what do you think?
On second thought, ignore this. We can always change it later, but having a
special syntax for the base types makes sense to me. Anything that cares
about types will need to understand the base types.
> * I don't know if sparse_keep_symbols seems like the right API.
> Sparse's approach to memory management (or lack thereof) bugs me
> a bit. More importantly, though, it makes the hierarchy of
> functions sparse(), then __sparse(), then sparse_keep_symbols(),
> which seems strange. I don't know a better solution offhand,
> though; don't worry too much about addressing this.
Ignore this too. The API you propose will work fine for now, and I don't want
to hold up merging the patch on trying to think of the perfect API for
something not directly related to the point of your patch.
> Thanks again for this work; it looks great, and highly useful.
- Josh Triplett
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 252 bytes --]
next prev parent reply other threads:[~2007-06-28 5:46 UTC|newest]
Thread overview: 9+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-27 13:51 [PATCH] c2xml Rob Taylor
2007-06-27 18:49 ` Josh Triplett
2007-06-28 5:45 ` Josh Triplett [this message]
2007-06-28 11:00 ` Rob Taylor
2007-07-02 12:32 ` Rob Taylor
2007-07-13 15:50 ` Rob Taylor
2007-07-13 17:55 ` Josh Triplett
2007-07-14 6:24 ` Josh Triplett
2007-07-14 23:54 ` Rob Taylor
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=46834AE1.8010107@freedesktop.org \
--to=josh@freedesktop.org \
--cc=josht@linux.vnet.ibm.com \
--cc=linux-sparse@vger.kernel.org \
--cc=rob.taylor@codethink.co.uk \
/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;
as well as URLs for NNTP newsgroup(s).