The Slcc package (version 0.1-0)

The package provides an S-language user-level interface to C parsing facilities using a modified version of lcc, a C compiler. One can get information about the definitions of data structures, routines and generally top-level C symbols from C source code. This can be processed in S to automate the generation of S and C code. Additionally, this package can provide information useful for providing a summary for understanding C code. These summaries can include listing routines and data structures, files in which different elements are defined and referenced, call graphs, etc.

This is unfinished, but the basic facilities and infra-structure are available. The hope is to get some feedback and to encourage others to help or take over the development of the package.

The original motivation for using lcc in conjunction with S is to be able to partially automate the rewriting of C code to be thread-safe.

Download

The current version is available as a GNU-zipped tar file Slcc_0.1-0.tar.gz

This is known to run on different variants of Linux. It currently fails at runtime on Solaris.

See the INSTALL.html for instructions installing the package.

Documentation

There are some documents describing how one might use this package.
  • Slcc
    Examples of using Slcc, including generating routine registration tables, copying C structures to S objects, a SWIG-like interface generator.
  • overview
  • Function documentation
    HTML & PDF
    Documentation for the functions in the Slcc package.

  • Duncan Temple Lang <duncan@research.bell-labs.com>
    Last modified: Tue Jun 5 10:27:21 EDT 2001