https://doi.org/10.71352/ac.52.057
Evaluation of predicates in the C++ Standard Template Library
Abstract. C++ is widely used language nowadays, it provides many high-level constructs. Its standard library tries to minimize classical programming errors, however, it introduces new ones. One of the known STL issues is related to algorithm predicates. Predicates make the algorithms customizable and they sometime store states for their task. However, these stored variables can introduce unexpected behavior. This issue can be detected in many ways, but standard compilers cannot detect this problem. We developed multiple techniques which are presented in this paper and compared to each other. These approaches cover both static analysis and dynamic analysis methods.
Full text PDF