Attending this event?
View analytic
Tuesday, September 25 • 15:15 - 15:45
Funqual: user-defined statically-checked call tree constraints in C++

Sign up or log in to save this to your schedule and see who's attending!

Static analysis tools can aid programmers by reporting potential programming mis-
takes prior to the execution of a program. Funqual is a static analysis tool that reads
C++17 code ”in the wild” and checks that the function call graph follows a set of
rules which can be defined by the user. This sort of analysis can help the program-
mer to avoid errors such as accidentally calling blocking functions in time-sensitive
contexts or accidentally allocating memory in heap-sensitive environments. To ac-
complish this, we create a type system whereby functions can be given user-defined
type qualifiers and where users can define their own restrictions on the call tree based
on these type qualifiers. We demonstrate that this tool, when used with hand-crafted
rules, can catch certain types of errors which commonly occur in the wild. We claim
that this tool can be used in a production setting to catch certain kinds of errors in
code before that code is even run.


Andrew Nelson

Andrew is passionate about creating tools and methodologies that enable everyone to write high quality software. He is currently a masters student at Cal Poly SLO where his area of research involves program static analysis. Andrew spends a lot of time teaching Computer Science to... Read More →

Tuesday September 25, 2018 15:15 - 15:45

Attendees (15)