Coca: A Debugger for C Based on Fine Grained Control Flow and Data Events

Mireille Ducassé 1
1 Lande - Logiciel : ANalyse et DEveloppement
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique
Abstract : We present Coca, an automated debugger for C, where the breakpoint mechanism is based on events related to language constructs. Events have semantics whereas source lines used by most debuggers do not have any. A trace is a sequence of events. It can be seen as an ordered relation in a database. Users can specify precisely which events they want to see by specifying values for event attributes. At each event, visible variables can be queried. The trace query language is Prolog with a handful of primitives. The trace query mechanism searches through the execution traces using both control flow and data whereas debuggers usually search according to either control flow or data. As opposed to fully «relational» debuggers which use plain database querying mechanisms, Coca trace querying mechanism does not require any storage. The analysis is done on the fly, synchronously with the traced execution. Coca is therefore more powerful than «source line» debuggers and more efficient than relational debuggers.
Type de document :
[Research Report] RR-3489, INRIA. 1998
Liste complète des métadonnées
Contributeur : Rapport de Recherche Inria <>
Soumis le : mercredi 24 mai 2006 - 12:10:48
Dernière modification le : mercredi 16 mai 2018 - 11:23:03
Document(s) archivé(s) le : dimanche 4 avril 2010 - 23:37:39



  • HAL Id : inria-00073198, version 1


Mireille Ducassé. Coca: A Debugger for C Based on Fine Grained Control Flow and Data Events. [Research Report] RR-3489, INRIA. 1998. 〈inria-00073198〉



Consultations de la notice


Téléchargements de fichiers