Re: Making a partial C compiler

torbenm@diku.dk (Torben Ęgidius Mogensen)
23 May 2003 01:34:53 -0400

          From comp.compilers

Related articles
Making a partial C compiler cyberheg@l115.langkaer.dk (John Eskie) (2003-05-18)
Re: Making a partial C compiler torbenm@diku.dk (2003-05-23)
Re: Making a partial C compiler matt@peakfive.com (Matt Rosing) (2003-05-24)
Re: Making a partial C compiler blackmarlin@asean-mail.com (2003-05-24)
Re: Making a partial C compiler idbaxter@semdesigns.com (2003-05-24)
Re: Making a partial C compiler cyberheg@l115.langkaer.dk (John Eskie) (2003-05-29)
Re: Making a partial C compiler vbdis@aol.com (2003-06-03)
Re: Making a partial C compiler lars@bearnip.com (2003-06-03)
[6 later articles]
| List of all articles for this month |

From: torbenm@diku.dk (Torben Ęgidius Mogensen)
Newsgroups: comp.compilers
Date: 23 May 2003 01:34:53 -0400
Organization: Department of Computer Science, University of Copenhagen
References: 03-05-139
Keywords: C
Posted-Date: 23 May 2003 01:34:53 EDT

"John Eskie" <cyberheg@l115.langkaer.dk> writes:


> I want to make a C/C++ source code obfuscator in C or C++. I don't
> need a full parser since I think about limited flow obfuscation. So
> what I need is to identify all "sub parts" of code like statements,
> if/while/for etc. pieces of code.
>
> Therefore I need some parsing code that could ease my job. I'm sure
> there are several people who wrote parsers and configuration scripts
> for C and C++ parsing because they are rather common languages but in
> my search I didn't know what to look for.


For C, you can look at the Ckit, a complete C frontend written in
SML. It can be found at http://www.smlnj.org/doc/ckit/ .


For C++, you might consider Open C++
(http://www.csg.is.titech.ac.jp/~chiba/openc++.html), an open-source
C++ compiler intended for experiments in source-code translation etc.
It doesn't implement the full standard, though.


Torben Mogensen


Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.