Support for C++ in GMC
Support for C++ in GMC
diplomová práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/59000Identifikátory
SIS: 116902
Kolekce
- Kvalifikační práce [10932]
Autor
Vedoucí práce
Oponent práce
Hnětynka, Petr
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové systémy
Katedra / ústav / klinika
Katedra distribuovaných a spolehlivých systémů
Datum obhajoby
9. 9. 2013
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Dobře
Klíčová slova (česky)
formální verifikace, C++, GMCKlíčová slova (anglicky)
formal verification, C++, GMCSoftware je používán na stále více místech našeho života a tak je stále důležitější jeho správnost. Proto je dobré přistoupit k jeho formální verifikaci. V současnosti neexistuje mnoho nástrojů pro verifikaci kódu v jazyce C++ a většina z nich neumí verifikovat všechny potřebné vlastnosti. Proto jsme se rozhodli rozšířit program GMC, který už uměl kontrolovat programy v jazyce C, o podporu jazyka C++. Kvůli značné rozsáhlosti jazyka C++ bylo cílem této práce implementovat jen základní vlastnosti jazyka (dědičnost, konstruktory, destruktory, virtuální metody a výjimky). Podpora všech těchto vlastností byla implementována až na výjimky, které jsou implementovány jen částečně. Powered by TCPDF (www.tcpdf.org)
Software is used in more and more aspects of our lives, so its correctness is more and more important. Its verification is thus a good idea. Now there are not many tools for verification of programs in the C++ language and most of them cannot verify all required properties. Because of this we decided to extend GMC, which was already able to verify C code, with support of the C++ language. However the C++ language is very vast, so the goal of this work is implementation of only the basic language features (inheritance, constructors, destructors, virtual methods and exceptions). The support of all those features have been implemented except for exceptions, which are implemented only partially. Powered by TCPDF (www.tcpdf.org)