2005
DOI: 10.1002/spe.683
|View full text |Cite
|
Sign up to set email alerts
|

STLlint: lifting static checking from languages to libraries

Abstract: Traditional static checking centers around finding bugs in programs by isolating cases where the language has been used incorrectly. These language-based checkers do not understand the semantics of software libraries, and therefore cannot be used to detect errors in the use of libraries. In this paper, we introduce STLlint, a program analysis we have implemented for the C++ Standard Template Library and similar, generic software libraries, and we present the general approach that underlies STLlint. We show tha… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
3
1
1

Citation Types

0
20
0

Year Published

2006
2006
2018
2018

Publication Types

Select...
4
2
1

Relationship

0
7

Authors

Journals

citations
Cited by 22 publications
(20 citation statements)
references
References 26 publications
0
20
0
Order By: Relevance
“…On the other hand, Gregor and Schupp [13] focus, like we do, on the certification of user programs. They present an unsound static analysis of C++ programs using STL containers.…”
Section: Related Workmentioning
confidence: 96%
“…On the other hand, Gregor and Schupp [13] focus, like we do, on the certification of user programs. They present an unsound static analysis of C++ programs using STL containers.…”
Section: Related Workmentioning
confidence: 96%
“…Gregor and Schupp [GS06] perform static checking (based on symbolic execution) of C ++ 's Standard Template Library (STL) containers. The basic idea is dealing with STL's idiomatic iterator features as if they were language extensions, whose semantics is hard-coded as symbolic execution constraints.…”
Section: Verification Of Data-structure Clientsmentioning
confidence: 99%
“…They focused on language and runtime support for optimistic parallelization while we aim to extend the classic compiler-based parallelization. STLlint [11] performs static checking for STL usage based on symbolic execution. Yi and Quinlan [34] developed a set of sophisticated semantic annotations to enable conventional sequential loop optimizations on user-defined array classes.…”
Section: Related Workmentioning
confidence: 99%