An Inference Algorithm for the Static Verification of Pointer Manipulation

Pascal Fradet 1 Ronan Gaugne 1 Daniel Le Métayer 1
1 Lande - Logiciel : ANalyse et DEveloppement
IRISA - Institut de Recherche en Informatique et Systèmes Aléatoires, Inria Rennes – Bretagne Atlantique
Abstract : The incorrect use of pointers is one of the most common source of bugs. As a consequence, any kind of static code checking capable of detecting potential bugs at compile time is welcome. This paper presents a static analysis for the detection of incorrect accesses to memory (dereferences of invalid pointers). A pointer may be invalid because it has not been initialised or because it refers to a memory location which has been deallocated. The analyser is derived from an axiomatisation of alias and connectivity properties which is shown to be sound with respect to the natural semantics of the language. It deals with dynamically allocated data structures and it is accurate enough to handle circular structures.
Type de document :
Rapport
[Research Report] RR-2895, INRIA. 1996
Liste complète des métadonnées

https://hal.inria.fr/inria-00073795
Contributeur : Rapport de Recherche Inria <>
Soumis le : mercredi 24 mai 2006 - 13:46:11
Dernière modification le : mercredi 16 mai 2018 - 11:23:03
Document(s) archivé(s) le : dimanche 4 avril 2010 - 23:58:27

Fichiers

Identifiants

  • HAL Id : inria-00073795, version 1

Citation

Pascal Fradet, Ronan Gaugne, Daniel Le Métayer. An Inference Algorithm for the Static Verification of Pointer Manipulation. [Research Report] RR-2895, INRIA. 1996. 〈inria-00073795〉

Partager

Métriques

Consultations de la notice

263

Téléchargements de fichiers

156