FSE 2025
Mon 23 - Fri 27 June 2025 Trondheim, Norway
co-located with ISSTA 2025
Mon 23 Jun 2025 14:40 - 15:00 at Cosmos 3A - Program Analysis 1 Chair(s): Shiyi Wei

Scalable static analyzers are popular tools for finding incorrect, inefficient, insecure, and hard-to-maintain code early during the development process. Because not all warnings reported by a static analyzer are immediately useful to developers, many static analyzers provide a way to suppress warnings, e.g., in the form of special comments added into the code. Such \emph{suppressions} are an important mechanism at the interface between static analyzers and software developers, but little is currently known about them. This paper presents the first in-depth empirical study of suppressions of static analysis warnings, addressing questions about the prevalence of suppressions, their evolution over time, the relationship between suppressions and warnings, and the reasons for using suppressions. We answer these questions by studying projects written in three popular languages and suppressions for warnings by four popular static analyzers. Our findings show that (i) suppressions are relatively common, e.g., with a total of 7,357 suppressions in 46 Python projects, (ii) the number of suppressions in a project tends to continuously increase over time, (iii) surprisingly, 50.8% of all suppressions do not affect any warning and hence are practically useless, (iv) some suppressions, including useless ones, may unintentionally hide future warnings, and (v) common reasons for introducing suppressions include false positives, suboptimal configurations of the static analyzer, and misleading warning messages. These results have actionable implications, e.g., that developers should be made aware of useless suppressions and the potential risk of unintentional suppressing, that static analyzers should provide better warning messages, and that static analyzers should separately categorize warnings from third-party libraries.

Mon 23 Jun

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

14:00 - 15:20
Program Analysis 1Industry Papers / Research Papers at Cosmos 3A
Chair(s): Shiyi Wei University of Texas at Dallas
14:00
20m
Talk
Dynamic Taint Tracking for Modern Java Virtual Machines
Research Papers
Katherine Hough Northeastern University, Jonathan Bell Northeastern University
DOI
14:20
20m
Talk
HapTest: The Dynamic Analysis Framework for OpenHarmony
Industry Papers
Farong Liu Beihang University, Mingyi Zhou Beihang University, Yakun Zhang Peking University, Ting Su East China Normal University, Bo Sun Huawei, Jacques Klein University of Luxembourg, Xiang Gao Beihang University, Li Li Beihang University
14:40
20m
Talk
An Empirical Study of Suppressed Static Analysis Warnings
Research Papers
Huimin Hu University of Stuttgart, Yingying Wang University of British Columbia, Julia Rubin The University of British Columbia, Michael Pradel University of Stuttgart
DOI
15:00
20m
Talk
A New Approach to Evaluating Nullability Inference Tools
Research Papers
Nima Karimipour University of California, Riverside, Erfan Arvan New Jersey Institute of Technology, Martin Kellogg New Jersey Institute of Technology, Manu Sridharan University of California at Riverside
DOI

Information for Participants
Mon 23 Jun 2025 14:00 - 15:20 at Cosmos 3A - Program Analysis 1 Chair(s): Shiyi Wei
Info for room Cosmos 3A:

Cosmos 3A is the first room in the Cosmos 3 wing.

When facing the main Cosmos Hall, access to the Cosmos 3 wing is on the left, close to the stairs. The area is accessed through a large door with the number “3”, which will stay open during the event.

:
:
:
: