| | |
Summary: FlowSensitive Type Qualifiers #
Jeffrey S. Foster Tachio Terauchi Alex Aiken
EECS Department
University of California, Berkeley
Berkeley, CA 947201776
{jfoster,tachio,aiken}@cs.berkeley.edu
ABSTRACT
We present a system for extending standard type systems
with flowsensitive type qualifiers. Users annotate their pro
grams with type qualifiers, and inference checks that the
annotations are correct. In our system only the type quali
fiers are modeled flowsensitively---the underlying standard
types are unchanged, which allows us to obtain an e#cient
constraintbased inference algorithm that integrates flow
insensitive alias analysis, e#ect inference, and ideas from
linear type systems to support strong updates. We demon
strate the usefulness of flowsensitive type qualifiers by find
ing a number of new locking bugs in the Linux kernel.
Categories and Subject Descriptors
D.2.1 [Software Engineering]: Requirements/Specifications;
|