packages icon

    C-Tree - C Tree Parser

    Copyright 1994-98 - Shaun Flisakowski

    This is a beta version of C-Tree.
    Please keep the complaints rolling in, or I'll never work on it :).

    The newest version is currently available at:

    or off my web page:

    Hopefully, I will find a better home for it in the future,
    but I will leave a pointer at that site in any case.

    Newer versions have bug fixes donated by various programmers,
    the list keeps growing. In particular, I would like to thank:
          Kurt Cockrum
          Robert O'Callahan
          John Harper
          Joerg Schoen
          Franklin Chen
          Keith Thompson
          Pavel Kalugin
          Mark Willey
          Richard O'Keefe

    And also thanks to the many more people who have
    pointed out bugs and made suggestions.

    The files ctree.c, ctree.h implement a simple main() that 
    reads in C files, parses them using tree_parse() and then
    _attempts_ to print them back out.  (It doesn't do a real good
    job of it).  This is only supposed to be an example, and is
    not meant to be a real program.  You would of course write
    your own main() which did something useful :). 
    I have added options to the example to show the tree as code
    (or rather attempts to, it's still pretty buggy)
    or as a tree (ie left child vs right child).

    Read ANNOUNCE, which is my hard-sell for why you want this
    C lexer/parser package instead of Roskind's (which doesn't even
    include a symbol table).

    Also, read COPYRIGHT which releases me from all responsibilites
    relating to the use or mis-use of this code.

    The 'gram' directory contains should ansi specs I got off the
    net somewhere, I didn't use them (I didn't find them until
    after I had already had mine) but I tossed them in anyway.

    The 'tst' directory contains some programs I was testing it

    The 'tri' directory contains code to make a simple preprocessor
    that will translate trigraphs.

    If you have problems/comments/suggestions I would like to hear 
    from you: