public inbox for sourcenav@sourceware.org
 help / color / mirror / Atom feed
From: Christopher Drexler <drexler@informatik.uni-erlangen.de>
To: sourcenav@sources.redhat.com
Subject: Re: preprocessing
Date: Tue, 14 Jan 2003 21:45:00 -0000	[thread overview]
Message-ID: <20030114214509.GA13816@faui5pc48.informatik.uni-erlangen.de> (raw)
In-Reply-To: <20030114184356.68436.qmail@web11504.mail.yahoo.com>

[-- Attachment #1: Type: text/plain, Size: 1441 bytes --]

Hi,

On Tue, Jan 14, 2003 at 10:43:56AM -0800, Michael English wrote:
> I'm new to Source Navigator. I'm trying to use it to
> analyse systems written in C++. My problem is that I
> can't view the complete hierarchy of a project. Is
> this  because no preprocessing has been done? The
> class name I'm looking for appears in a #define
> statement. 

I'm using Source Navigator with a project where all class names
and base class names are "#define"'d. My solution was to patch
the c++ parser to call a configurable preprocesser as one doesn't
want to replace e.g. "FILE" defines. 

I use 'filepp' (http://www.cabaret.demon.co.uk/filepp/) together
with a special module which defines which macros are to be 
substituted (in my case "THIS" for the class name and "BASE" for 
the base class name). The substituition is only used for building
the reference databases. The source file is left untouched. 

The system has problems with multi line macros but works quite 
well otherwise. 


I can provide the patch for the C++ parser and the module for the
'filepp' preprocesser if wanted. 

Regards,
Chris

-- 
Dipl.-Inf. Christopher Drexler, Lehrst.f. Mustererkennung _    __  __ ___ 
Institut f. Informatik, Universitaet Erlangen-Nuernberg  | |  |  \/  | __|
WWW : http://www5.informatik.uni-erlangen.de/~drexler  	 | |__| |\/| | _| 
GPG : http://www.keyserver.net                           |____|_|  |_|___|

[-- Attachment #2: Type: application/pgp-signature, Size: 232 bytes --]

      reply	other threads:[~2003-01-14 21:45 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-01-14 18:44 preprocessing Michael English
2003-01-14 21:45 ` Christopher Drexler [this message]

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=20030114214509.GA13816@faui5pc48.informatik.uni-erlangen.de \
    --to=drexler@informatik.uni-erlangen.de \
    --cc=sourcenav@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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).