Deferred cleanup and error handling in C - Archive ouverte HAL Access content directly
Reports (Research Report) Year : 2020

Deferred cleanup and error handling in C

Nettoyage et traitement d'erreur différés pour le langage C

(1) , (2)
1
2
Robert C Seacord
  • Function : Author
  • PersonId : 1085585

Abstract

This paper introduces the implementation of a C language mechanism for error handling and deferred cleanup adapted from similar features in the Go programming language. This mechanism improves the proximity, visibility, maintainability, robustness, and security of cleanup and error handling over existing language features. This feature is under consideration for inclusion in the C Standard.The library implementation of the features described by this paper is publicly available under an Open Source License at https://gustedt.gitlabpages.inria.fr/defer/.
Ce papier introduit l’implémentation d’un mécanisme en langage C pour le traitement d’erreur et le nettoyage différé qui est motivé par une fonctionnalité similaire en langage Go. Il améliore la proximité, la visibilité, l’entretien, la robustesse et la sécurité du nettoyage et du traitement d’erreur comparé à d’autres fonctionnalités du langage. Cette fonctionnalité est en considération pour l’inclusion dans le standard C. L’implémentation des fonctionnalités décrites par ce papier en forme de bibliothèque est accessible publiquement sous une licence libre à https://gustedt.gitlabpages.inria.fr/defer/.
Fichier principal
Vignette du fichier
defer-implementation-long.pdf (635.67 Ko) Télécharger le fichier
Origin : Files produced by the author(s)

Dates and versions

hal-03090771 , version 1 (30-12-2020)

Licence

Attribution - NonCommercial - NoDerivatives - CC BY 4.0

Identifiers

  • HAL Id : hal-03090771 , version 1

Cite

Jens Gustedt, Robert C Seacord. Deferred cleanup and error handling in C. [Research Report] RR-9385, Inria Nancy - Grand Est. 2020, pp.23. ⟨hal-03090771⟩
104 View
1221 Download

Share

Gmail Facebook Twitter LinkedIn More