Shadow: annotating software patches with the change macro

On this page you can find more details about our proposed annotations for
thepatches.

In our study, we focus on Coreutils patches studied by the CoREBench
project.
We express the change introduced by a patch using the change() macro that takes
two parameters: the code expression before and the code expression after the
change. For example, if astatement

int y = x - 1;

is changed to astatement

int y = x + 1;

then we annotate that change using our change() macro the followingway:

int y = change(x - 1, x + 1);

The table below summarises the information about Coreutils patches from CoREBench
and our corresponding annotations. The first column is the ID of the patch; we
use the same numbering as CoREBench. The second column is a link to the diff for
each patch on Coreutils web page. The third column is a link to a downloadable
patch containing our annotations. Finally, the last column is a link to a web page
containing a preview of the original patch and ourannotations.

For simplicity, we present only the annotations for the patches and omit all
other modifications introduced for technicalreasons.