Dr. Martin Ettl‎ > ‎

Nonprofit work: contributions to open source projects

Personally i am interested in methods to improve the quality of source code. This is why i am a developer of Cppcheck-project, a static code analysis tool for the C and C++ programming language.

Cppcheck supports a wide variety of static checks that may not be covered by the compiler itself. These checks are static analysis checks that can be performed at a source code level. The program is directed towards static analysis checks that are rigorous, rather than heuristic in nature.  Some of the checks that are supported include:
      • Automatic variable checking
      • Bounds checking for array overruns
      • Classes checking. (e.g. unused functions, variable initialization and memory duplication).
      • Usage of deprecated or superseded functions according to Open Group
      • Exception safety checking, for example usage of memory allocation and destructor checks
      • Memory leaks, e.g. due to lost scope without deallocation
      • Resource leaks, e.g. due to forgetting to close a file handler
      • Invalid usage of Standard Template Library functions and idioms
      • Miscellaneous stylistic and performance errors
      • And many more 
Here is list of my contributions to this project.

In order to improve the robustness of Cppcheck i invented a code fuzzing algorithm, which automatically detects crashes from Cppcheck. 
A collection of files that crash Cppcheck can be downloaded from github.

Rosetta Code is a programming chrestomathy site. The idea is to present solutions to the same task in as many different languages as possible, to demonstrate how languages are similar and different, and to aid a person with a grounding in one approach to a problem in learning another.

The On-Line Encyclopedia of Integer Sequences (OEIS), also cited simply as Sloane's, is an online database of integer sequences, created and maintained by N. J. A. Sloane, a researcher at AT&T Labs. In October 2009, the intellectual property and hosting of the OEIS were transferred to the OEIS Foundation. OEIS records information on integer sequences of interest to both professional mathematicians and amateurs, and is widely cited. As of 20 November 2011 it contains over 200,000 sequences, making it the largest database of its kind.  Each entry contains the leading terms of the sequence, keywords, mathematical motivations, literature links, and more, including the option to generate a graph or play a musical representation of the sequence. The database is searchable by keyword and by subsequence....

The following list contains links to several other open source projects, where i have contributed over the last years. 
Mainly this is a list of bug reports or suggestions for potential improvements:

CVE-2012-1147: https://bugzilla.redhat.com/show_bug.cgi?id=801634

Eye of GNOME:

Path64 Compiler: