Proposed C++ Benchmark

Home
Workshop
Benchmark
Results
News

Instructions

Below is a list of test buckets in the benchmark.  Due primarily to lack of time, the xfig and SORTIE test buckets will not be used in this workshop. 

The complete set of test buckets are available in a single file: cppbm.tar.gz (280058 bytes).

Each test bucket consists of: source code and a series of questions.  A solution to the test bucket will consist of output from the parser-analyser and a file describing where the answers to the questions can be found in the ouput (e.g. line numbers or node numbers). An example is given below the list.
 

Accuracy

Robustness

Accuracy and Robustness

Preprocessing
  • Macros
  • Conditional Compilation
  • Pragmas
C++ Syntax
Incomplete Information Dialects Heterogeneous Source Generated Code Large Systems
  • xfig
  • SORTIE

Sample test bucket and solution

A test bucket consists of some source code and a question file. In this case:

The question file contains questions (of course), about the source and the answers.

The solution consists of the output from the parser-analyser and an answer file.

The answer file should indicate where the answers to the questions asked can be found in the output. Note that the solution was submitted in a subdirectory named after the tool.

Suggested Future Tests

The test buckets do not exhaustively cover every aspect of C++ syntax and parsing. We have received a number of suggestions for additional test buckets to be included in the benchmark.

  • boolean data type
  • asm keyword
  • static typecasting
  • dynamic typecasting