All Projects → shiinamiyuki → kcc

shiinamiyuki / kcc

Licence: MIT license
A Small C Compiler

Programming Languages

C++
36643 projects - #6 most used programming language
Makefile
30231 projects
c
50402 projects - #5 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to kcc

localhost-sonarqube
Analysing source code locally with SonarQube in a Docker environment.
Stars: ✭ 17 (-5.56%)
Mutual labels:  static-analysis
phantom-types
Phantom types for Python.
Stars: ✭ 120 (+566.67%)
Mutual labels:  static-analysis
ramllint
RAML Linter
Stars: ✭ 18 (+0%)
Mutual labels:  static-analysis
qulice
Quality Police for Java projects: aggregator of Checkstyle, PMD, and SpotBugs
Stars: ✭ 286 (+1488.89%)
Mutual labels:  static-analysis
cmake-init
The missing CMake project initializer
Stars: ✭ 1,071 (+5850%)
Mutual labels:  static-analysis
dmn-check
A tool which performs static analyses on Decision Model Notation (DMN) files to detect bugs
Stars: ✭ 34 (+88.89%)
Mutual labels:  static-analysis
subpy
Python subsets
Stars: ✭ 41 (+127.78%)
Mutual labels:  static-analysis
go-perfguard
CPU-guided performance analyzer for Go
Stars: ✭ 58 (+222.22%)
Mutual labels:  static-analysis
lints
Lint all your JavaScript, CSS, HTML, Markdown and Dockerfiles with a single command
Stars: ✭ 14 (-22.22%)
Mutual labels:  static-analysis
lunatic
lunatic: a toy lua interpreter
Stars: ✭ 16 (-11.11%)
Mutual labels:  practice-project
swap-detector
A library for detecting swapped arguments in function calls, and a Clang Static Analyzer plugin used to demonstrate the library.
Stars: ✭ 19 (+5.56%)
Mutual labels:  static-analysis
dlint
Dlint is a tool for encouraging best coding practices and helping ensure Python code is secure.
Stars: ✭ 130 (+622.22%)
Mutual labels:  static-analysis
azcc
A toy C compiler, developed at seccamp2020.
Stars: ✭ 19 (+5.56%)
Mutual labels:  c-compiler
Vehicle-Security-Toolkit
汽车/安卓/固件/代码安全测试工具集
Stars: ✭ 367 (+1938.89%)
Mutual labels:  static-analysis
PHPDoctor
🏥 PHPDoctor: Check files, full directories or strings for missing or bad PHPDoc types.
Stars: ✭ 54 (+200%)
Mutual labels:  static-analysis
klever
Read-only mirror of the Klever Git repository
Stars: ✭ 18 (+0%)
Mutual labels:  static-analysis
bismon
persistent monitor (for static source code analysis, GCC based)
Stars: ✭ 45 (+150%)
Mutual labels:  static-analysis
php-codesniffer-sniffs
Custom sniffs for PHP_CodeSniffer
Stars: ✭ 16 (-11.11%)
Mutual labels:  static-analysis
phpstan-wordpress
WordPress extensions for PHPStan ⛏️
Stars: ✭ 182 (+911.11%)
Mutual labels:  static-analysis
phpstan-phpspec
PhpSpec extension for PHPStan
Stars: ✭ 19 (+5.56%)
Mutual labels:  static-analysis

kcc

A small C compiler (in progress) This aims to be a full C11 compilant compiler.

Stages:

  1. Lexer (without preprocessor)
  2. Parser (supports basic syntax)
  3. Semantic Analysis
  4. Code Generation (System V ABI compatible)

More info about this project:

What's the purpose of this project?
In brief, to learn optimizing techniques as well as the C11 language. Unfortunately, my time is limited. I might not have time to implement SSA-based optimizations. So now the first goal is to make it C11 compliant.

Why using C++ instead of C?
Because this is an optimizing compiler, which focuses on algorithm rather that the ability of bootstrapping. Another reason is that C++ makes it easier to organize large amount of code, which is crucial, considering this is a one-man project. I don't have much time working on this project so i don't want to waste my time on segfaults.

Which plaform is it targeting?
I am developing using WindowsWSL, but it's targeting linux.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].