SearcharxivSearch

arXiv subjects

Flash Sheridan

Publications and source records attributed to Flash Sheridan.

4 recordsLinked to original sources

Static Analysis Deployment Pitfalls

Organizational, political, and configuration mistakes in the deployment of a static source code analysis tool within a software development organization can result in most of the value of the tool being lost, even while apparently meeting management goals. A list of pitfalls encountered as a static analysis consultant is presented, with discussion of techniques for avoiding or mitigating them. This is part of a work in progress, tentatively entitled "Handbook of Static Analysis Deployment."

cs.SE

Deploying Static Analysis

Static source code analysis is a powerful tool for finding and fixing bugs when deployed properly; it is, however, all too easy to deploy it in a way that looks good superficially, but which misses important defects, shows many false positives, and brings the tool into disrepute. This article is a guide to the process of deploying a static analysis tool in a large organization while avoiding the worst organizational and technical pitfalls. My main point is the importance of concentrating on the main goal of getting bugs fixed, against all the competing lesser goals which will arise during the process.

cs.SE

Practical Testing of a C99 Compiler Using Output Comparison

A simple technique is presented for testing a C99 compiler, by comparison of its output with output from preexisting tools. The advantage to this approach is that new test cases can be added in bulk from existing sources, reducing the need for in-depth investigation of correctness issues, and for creating new test code by hand. This technique was used in testing the PalmSource Palm OS Cobalt ARM C/C++ cross-compiler for Palm-Powered personal digital assistants, primarily for standards-compliance and correct execution of generated code. The technique described here found several hundred bugs, mostly in our in-house code, but also in longstanding high-quality front- and back-end code from Edison Design Group and Apogee Software. It also found eighteen bugs in the GNU C compiler, as well as a bug specific to the Apple version of GCC, a bug specific to the Suse version of GCC, and a dozen bugs in versions of GCC for the ARM processor, several of them critical.

cs.SE

A Closer Look at the Russell Paradox

Two types of approximation to the paradoxical Russell Set are presented, one approximating it from below, one from above. It is shown that any lower approximation gives rise to a better approximation containing it, and that any upper approximation contains a distinct better approximation. The Russell Paradox is then seen to be the claim that two of these processes of better approximations stop, and at the same set. This suggests that the unrestricted Axiom of Comprehension is, not a coherent intuition worthy of rescue from a mysterious paradox, but simply wishful thinking, a confusion of sets as extensional objects with classes defined by a property.

math.LO