Code Monkey home page Code Monkey logo

simplecpp's Introduction

Simple C/C++ preprocessor

This is a simple C/C++ preprocessor.

The goal is to have good conformance with the C and C++ standards and to handle nonstandard preprocessor extensions in gcc / clang / visual studio preprocessors. Most of the preprocessor testcases in gcc and clang are handled OK by simplecpp.

To see how you can use simplecpp in your project, you can look at the file main.cpp.

Simplecpp has better fidelity than normal C/C++ preprocessors.

  • Preprocessor directives are available.
  • Comments are available.
  • Tracking macro usage.

This information is normally lost during preprocessing but it can be necessary for proper static analysis.

Status

CI-windows CI Unixish

Compiling

Compiling standalone simplecpp preprocessor:

Either:

g++ -o simplecpp main.cpp simplecpp.cpp

Or:

make

Compiling and running tests (you need python to run the gcc/clang test cases)

make test

simplecpp's People

Contributors

amai2012 avatar danmar avatar diorcety avatar dmitry-me avatar dummyunit avatar ew-dm avatar firewave avatar holgiho avatar iobyte avatar jannick0 avatar jightuse avatar katahiromz avatar keinflue avatar ken-patrick avatar larslj avatar mathbunnyru avatar matthiaskrgr avatar mitsujin avatar o-bolshakov avatar orbitcowboy avatar pkeus avatar rikardfalkeborn avatar rsbnt avatar svenpanne avatar uburuntu avatar versat avatar x29a avatar zingsheim avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.