2012
DOI: 10.1007/978-3-642-33442-9_45
|View full text |Cite
|
Sign up to set email alerts
|

Using the Eclipse C/C++ Development Tooling as a Robust, Fully Functional, Actively Maintained, Open Source C++ Parser

Abstract: Open Source parsers that support contemporary C/C++, can recover from errors, include a preprocessor, and that are actively maintained, are rare. This work describes how to use the parser contained in the Eclipse C/C++ Development Tooling (CDT) as a Java library. Such parser provides not only the abstract syntax tree of the parsed file but also the semantics, i.e., type information and bindings. The authors used the same approach to obtain Java and JavaScript parsers.

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
5
0

Year Published

2013
2013
2021
2021

Publication Types

Select...
3
3
2

Relationship

1
7

Authors

Journals

citations
Cited by 9 publications
(5 citation statements)
references
References 6 publications
0
5
0
Order By: Relevance
“…reliably identify these details from project sources, we use the C++ Development Tooling (CDT) [Piatov, 2012]. The output of the analysis is a list of definitions, in particular global variables, local static variables and static class member variables, enriched with type and identification information.…”
Section: Source Code Analysismentioning
confidence: 99%
See 1 more Smart Citation
“…reliably identify these details from project sources, we use the C++ Development Tooling (CDT) [Piatov, 2012]. The output of the analysis is a list of definitions, in particular global variables, local static variables and static class member variables, enriched with type and identification information.…”
Section: Source Code Analysismentioning
confidence: 99%
“…The way how these annotations enforce assigning criticality levels within the runtime memory layout can be summarised as follows: during compilation phase, the source code parser -CDT [Piatov, 2012] -recognises annotations and uses them to classify all source variables in the project. In the end of the compilation phase, these properties are then applied from sources variables to binary objects.…”
Section: { / / T H I S I N S T a N C E I S A S S I G N E D S A F E T Y I N T E G R I T Y 3 S T A T I Cmentioning
confidence: 99%
“…The based technique for model extraction is to use a parser that provides parsing and model generation. Regarding the choice of C++ open source parser, we opted for the CDT parser, here [3] we found the reasons for choosing CDT parser to extract information from both header and source files in order to represent SLOT function definitions. The text to model transformation using CDT parser uses node visiting technique, it starts by creating the syntax tree of header file, then visiting node by node for filling in the instance model that conforms to CSTM meta-model.…”
Section: ) Extracting Concrete Syntax Tree Nodesmentioning
confidence: 99%
“…Moreover, it gives a brief overview of the architecture the metric calculation system we developed. Parsing C/C++ is difficult [6,7,8] and therefore robust (can recover from errors), fully functional, actively maintained, and Open Source C/C++ parsers are hard to find. To cite a Senior Engineer at Amazon.com: "After lots of investigation, I decided that writing a parser/analysis-tool for C++ is sufficiently difficult that it's beyond what I want to do as a hobby."…”
Section: Introductionmentioning
confidence: 99%