Static program analysers typically come with a set of hard-coded checks, leaving little room for the user to add additional properties. In this work, we present a uniform approach to enable the specification of new static analysis checks in a concise manner. In particular, we present our GPSL/GXSL language to define new control flow checks. The language is closely related to CTL specifications that are combined with XPath queries. Moreover, we provide a number of specifications as implemented in our tool Goanna, and report on our experiences of adding new checks.
Vistein, M., Ortmeier, F., Reif, W., Huuck, R., & Fehnker, A. (2009). An Abstract Specification Language for Static Program Analysis. Electronic notes in theoretical computer science, 254, 181-197. https://doi.org/10.1016/j.entcs.2009.09.066