Original title:
Automatická kontrola programů v jazyce C
Translated title:
Automated checking of C language programs
Authors:
Doucha, Martin ; Spousta, Miroslav (referee) ; Mareš, Martin (advisor) Document type: Bachelor's theses
Year:
2009
Language:
cze Abstract:
[cze][eng] V této práci studuji možnost zjišt'ovat běžné začátenické chyby v jazyce C pomocí statických analýz zdrojového kódu a generování run-time testů. Součástí práce je implementace několika jednoduchých statických analýz a run-time testů zaměřených na začátečnické chyby a jejich co nejpřesnější lokalizaci ve zdrojovém kódu. Jako základ pro jejich implementaci jsem zvolil kompilátorovou infrastrukturu LLVM a frontend Clang. Dále v téeto práci naleznete stručný programátorský úvod do systému LLVM a popis nově implementovaných nástrojů. Hlavním cílem je umožnit využití jazyka C ve výuce základního kurzu programování.In the present work I study ways of checking common beginner mistakes in C language programs using static analyses of source code and generating run-time checks. Part of this work consists of implementation of several simple static analyses and run-time check generators focused on detecting beginner mistakes and locating them in the source code as accurately as possible. I have chosen the LLVM Compiler Infrastructure and Clang frontend as a basis for the implementation. In this text, you will find a brief programmer's introduction to the LLVM Compiler Infrastructure and a description of newly implemented tools. The main goal of this work is to enable using the C programming language for basic computer programming course.
Institution: Charles University Faculties (theses)
(web)
Document availability information: Available in the Charles University Digital Repository. Original record: http://hdl.handle.net/20.500.11956/26818