# cpp-grammars **Repository Path**: hilbertw/cpp-grammars ## Basic Information - **Project Name**: cpp-grammars - **Description**: https://github.com/mingodad/cpp-grammars.git - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-12 - **Last Updated**: 2026-06-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # [cpp-grammars](https://mingodad.github.io/cpp-grammars) Here are the grammars extracted from [https://github.com/cplusplus/draft/](https://github.com/cplusplus/draft/) and converted to an `EBNF` understood by [https://www.bottlecaps.de/rr/ui](https://www.bottlecaps.de/rr/ui) to generate navigable railroad diagrams. - [C++11](https://mingodad.github.io/cpp-grammars/c++11.ebnf.xhtml) - [C++14](https://mingodad.github.io/cpp-grammars/c++14.ebnf.xhtml) - [C++17](https://mingodad.github.io/cpp-grammars/c++17.ebnf.xhtml) - [C++20](https://mingodad.github.io/cpp-grammars/c++20.ebnf.xhtml) - [C++23-draft](https://mingodad.github.io/cpp-grammars/c++23.ebnf.xhtml) ## C - [C99](https://mingodad.github.io/cpp-grammars/c99.ebnf.xhtml) - [C11](https://mingodad.github.io/cpp-grammars/c11.ebnf.xhtml) - [C17](https://mingodad.github.io/cpp-grammars/c17.ebnf.xhtml) - [C23](https://mingodad.github.io/cpp-grammars/c23-n3220.ebnf.xhtml) ## Other related grammars The g++-3.3.6 grammar (the last using yacc/bison). - [g++3.3.6](https://mingodad.github.io/cpp-grammars/g++-3.3.6.ebnf.xhtml) The [Elsa C++](https://github.com/smcpeak/elsa) grammar. - [elsa-c++](https://mingodad.github.io/cpp-grammars/elsa-cc.gr.ebnf.xhtml) - [elsa-kandr-gnu-c++](https://mingodad.github.io/cpp-grammars/elsa.cc.kandr.gnu.ebnf.xhtml) The open-watcom-v2 grammar. - [open-watcom-v2](https://mingodad.github.io/cpp-grammars/open-watcom-v2.ebnf.xhtml) The cfront grammars. - [cfront1](https://mingodad.github.io/cpp-grammars/cfront1.ebnf.xhtml) - [cfront2](https://mingodad.github.io/cpp-grammars/cfront2.ebnf.xhtml) - [cfront3](https://mingodad.github.io/cpp-grammars/cfront3.ebnf.xhtml) The [rose-compiler](https://github.com/rose-compiler/rose/) experimental-c++-parser grammar. - [experimental-c++-parser](https://mingodad.github.io/cpp-grammars/rose-exper-c++-compiler.ebnf.xhtml) The [cppparser](https://github.com/satya-das/cppparser) satya-das-cppparser grammar. - [satya-das-cppparser](https://mingodad.github.io/cpp-grammars/satya-das-cppparser.ebnf.xhtml) The [cppfront](https://github.com/hsutter/cppfront/) grammar. - [cppfront](https://mingodad.github.io/cpp-grammars/cppfront.ebnf.xhtml) The [carbon-lang](https://github.com/carbon-language/carbon-lang) grammar. - [carbon-lang](https://mingodad.github.io/cpp-grammars/carbon-lang.ebnf.xhtml) There is also a hand written [`C++` parser here](https://github.com/robertoraggi/cplusplus).