On November 11, 2020, the 1st SFB 901 seminar in the winter semester will take place.
4:00 - 5:00 subproject B4
Speakers: Prof. Dr. Eric Bodden and Philipp Schubert
Title: Variational Analysis of Software Product Lines
The talk will be held via BigBlueButton.
The C language---often used to implement configurable critical computing infrastructure---offers the preprocessor to encode variability. The preprocessor, however, makes the code especially challenging to analyze statically. SPLlift, an effective approach for analyzing software product lines, is limited to analysis problems encoded in the popular IFDS framework and Java programs that use a rather simple feature encoding. Approaches that can analyze real-world C SPLs developed analyses for un-preprocessed source code or new constructs to replace the preprocessor. Yet, this requires the development of special-purpose analyses preventing the reuse of existing analysis infrastructure and ignoring the progress made by traditional static analysis. This work thus presents a novel desugaring approach that transforms preprocessor constructs to ordinary C while preserving its semantics. As we show, this allows one to reuse any existing static analysis infrastructure, without modification. To boost analysis precision and speed, we implemented VarAlyzer, a variability-aware extension to PhASAR that overcomes SPLlift's restrictions and is able to solve arbitrary distributive analysis problems. The experimental results show that PhASAR, for the first time, enables us to conduct difficult semantic analyses on entire real-world SPLs.