Název:
Automatická kontrola programů v jazyce C
Překlad názvu:
Automated checking of C language programs
Autoři:
Doucha, Martin ; Spousta, Miroslav (oponent) ; Mareš, Martin (vedoucí práce) Typ dokumentu: Bakalářské práce
Rok:
2009
Jazyk:
cze
Abstrakt: [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.