diff --git a/src/plugins/alias/tests/basic/oracle/assignment1.res.oracle b/src/plugins/alias/tests/basic/oracle/assignment1.res.oracle
index 533a4a283605f8aeb5dd691a752496e3a7a455c7..2d4c8830c828330d5b96211f8841f8fc76253b3f 100644
--- a/src/plugins/alias/tests/basic/oracle/assignment1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/assignment1.res.oracle
@@ -1,25 +1,24 @@
 [kernel] Parsing assignment1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: b = c;
+[alias] May-aliases at the end of instruction:
+  {a, b, c} are aliased
+[alias] analysing instruction: a = d;
+[alias] May-aliases at the end of instruction:
+  {a, b, c, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, c, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, c, d} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement a = b; :
- 
-Before statement b = c; :
- {a, b} are aliased
-
-Before statement a = d; :
- {a, b, c} are aliased
-
-Before statement __retres = 0; :
- {a, b, c, d} are aliased
-
-Before statement return __retres; :
- {a, b, c, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/assignment2.res.oracle b/src/plugins/alias/tests/basic/oracle/assignment2.res.oracle
index 543c44ff607e6ffcef28b473d9c6234b2ece78d6..18c5adee7ee025cc54b54a49907dbdf8dd671ff7 100644
--- a/src/plugins/alias/tests/basic/oracle/assignment2.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/assignment2.res.oracle
@@ -1,29 +1,28 @@
 [kernel] Parsing assignment2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int **a = (int **)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int **c = (int **)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *a = b;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+[alias] analysing instruction: *c = d;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+  {*c, d} are aliased
+[alias] analysing instruction: a = c;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+  {*a, *c, b, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+  {*a, *c, b, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, c} are aliased
   {*a, *c, b, d} are aliased
-Before statement int **a = (int **)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int **c = (int **)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement *a = b; :
- 
-Before statement *c = d; :
- {*a, b} are aliased
-
-Before statement a = c; :
- {*a, b} are aliased
-{*c, d} are aliased
-
-Before statement __retres = 0; :
- {a, c} are aliased
-{*a, *c, b, d} are aliased
-
-Before statement return __retres; :
- {a, c} are aliased
-{*a, *c, b, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/assignment3.res.oracle b/src/plugins/alias/tests/basic/oracle/assignment3.res.oracle
index 421f8d8a689b3067bdc88fdc471c4e9826b8b468..ea0ba00323531a35ccdcc86db77627b9c06ef154 100644
--- a/src/plugins/alias/tests/basic/oracle/assignment3.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/assignment3.res.oracle
@@ -1,20 +1,19 @@
 [kernel] Parsing assignment3.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int b = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = & b;
+[alias] May-aliases at the end of instruction:
+  {a, &b} are aliased
+[alias] analysing instruction: c = & b;
+[alias] May-aliases at the end of instruction:
+  {a, c, &b} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, c, &b} are aliased
 [alias] May-aliases at the end of function main:
   {a, c, &b} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int b = 0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement a = & b; :
- 
-Before statement c = & b; :
- {a, &b} are aliased
-
-Before statement __retres = 0; :
- {a, c, &b} are aliased
-
-Before statement return __retres; :
- {a, c, &b} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/assignment4.res.oracle b/src/plugins/alias/tests/basic/oracle/assignment4.res.oracle
index dfd7442f4ea8a7bbc72869261f0120a0c45e5b06..1ac19a8b178c43757cdb728b45f4faa504226181 100644
--- a/src/plugins/alias/tests/basic/oracle/assignment4.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/assignment4.res.oracle
@@ -1,26 +1,25 @@
 [kernel] Parsing assignment4.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int **a = (int **)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int **c = (int **)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *a = b;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+[alias] analysing instruction: *c = d;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+  {*c, d} are aliased
+[alias] analysing instruction: b = d;
+[alias] May-aliases at the end of instruction:
+  {*a, *c, b, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {*a, *c, b, d} are aliased
 [alias] May-aliases at the end of function main:
   {*a, *c, b, d} are aliased
-Before statement int **a = (int **)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int **c = (int **)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement *a = b; :
- 
-Before statement *c = d; :
- {*a, b} are aliased
-
-Before statement b = d; :
- {*a, b} are aliased
-{*c, d} are aliased
-
-Before statement __retres = 0; :
- {*a, *c, b, d} are aliased
-
-Before statement return __retres; :
- {*a, *c, b, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/assignment5.res.oracle b/src/plugins/alias/tests/basic/oracle/assignment5.res.oracle
index 9f985ed670a26bb5e0c0d91ff76ea03fba67fdc3..361b6166dbdc7b84c194b09ca84af8240f422d64 100644
--- a/src/plugins/alias/tests/basic/oracle/assignment5.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/assignment5.res.oracle
@@ -1,29 +1,28 @@
 [kernel] Parsing assignment5.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int ***a = (int ***)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int **b = (int **)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *a = b;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+[alias] analysing instruction: *b = c;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+  {*b, c} are aliased
+[alias] analysing instruction: d = *(*a);
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+  {*(*a), *b, c, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {*a, b} are aliased
+  {*(*a), *b, c, d} are aliased
 [alias] May-aliases at the end of function main:
   {*a, b} are aliased
   {*(*a), *b, c, d} are aliased
-Before statement int ***a = (int ***)0; :
- 
-Before statement int **b = (int **)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement *a = b; :
- 
-Before statement *b = c; :
- {*a, b} are aliased
-
-Before statement d = *(*a); :
- {*a, b} are aliased
-{*b, c} are aliased
-
-Before statement __retres = 0; :
- {*a, b} are aliased
-{*(*a), *b, c, d} are aliased
-
-Before statement return __retres; :
- {*a, b} are aliased
-{*(*a), *b, c, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/cast1.res.oracle b/src/plugins/alias/tests/basic/oracle/cast1.res.oracle
index 9a17da89ca833b6a11e23f3d44f9afac19f36aa7..4652f0a890906318e1172f6e8ccb9f27bad03216 100644
--- a/src/plugins/alias/tests/basic/oracle/cast1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/cast1.res.oracle
@@ -1,25 +1,24 @@
 [kernel] Parsing cast1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: float *c = (float *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: float *d = (float *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = (int *)c;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+[alias] analysing instruction: d = (float *)b;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+  {b, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+  {b, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, c} are aliased
   {b, d} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement float *c = (float *)0; :
- 
-Before statement float *d = (float *)0; :
- 
-Before statement a = (int *)c; :
- 
-Before statement d = (float *)b; :
- {a, c} are aliased
-
-Before statement __retres = 0; :
- {a, c} are aliased
-{b, d} are aliased
-
-Before statement return __retres; :
- {a, c} are aliased
-{b, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/conditional1.res.oracle b/src/plugins/alias/tests/basic/oracle/conditional1.res.oracle
index bcc4b83a3544f3c1adbeb6c94256daff0e49e8cd..e67c88eaab990a9abec4cca4cc60802563086538 100644
--- a/src/plugins/alias/tests/basic/oracle/conditional1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/conditional1.res.oracle
@@ -1,24 +1,22 @@
 [kernel] Parsing conditional1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: a = c;
+[alias] May-aliases at the end of instruction:
+  {a, c} are aliased
+[alias] analysing instruction: *a = 4;
+[alias] May-aliases at the end of instruction:
+  {a, b, c} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, c} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, c} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement if (a) a = b; else a = c; :
- 
-Before statement a = b; :
- 
-Before statement a = c; :
- 
-Before statement *a = 4; :
- {a, b, c} are aliased
-
-Before statement __retres = 0; :
- {a, b, c} are aliased
-
-Before statement return __retres; :
- {a, b, c} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/conditional2.res.oracle b/src/plugins/alias/tests/basic/oracle/conditional2.res.oracle
index 1e6ad30b5289a5a3a3817f2fed527cfcf00e4bd8..194afa48bf6483d69f0fdce98080b19d2ed92310 100644
--- a/src/plugins/alias/tests/basic/oracle/conditional2.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/conditional2.res.oracle
@@ -1,39 +1,33 @@
 [kernel] Parsing conditional2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: b = & c;
+[alias] May-aliases at the end of instruction:
+  {b, &c} are aliased
+[alias] analysing instruction: c = & d;
+[alias] May-aliases at the end of instruction:
+  {b, &c} are aliased
+  {c, &d} are aliased
+[alias] analysing instruction: d = & e;
+[alias] May-aliases at the end of instruction:
+  {b, &c} are aliased
+  {c, &d} are aliased
+  {d, &e} are aliased
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {d, &e} are aliased
+  {a, b, &c} are aliased
+  {c, &d} are aliased
+[alias] analysing instruction: a = & c;
+[alias] May-aliases at the end of instruction:
+  {d, &e} are aliased
+  {a, b, &c} are aliased
+  {c, &d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {d, &e} are aliased
+  {a, b, &c} are aliased
+  {c, &d} are aliased
 [alias] May-aliases at the end of function main:
   {d, &e} are aliased
   {a, b, &c} are aliased
   {c, &d} are aliased
-Before statement b = & c; :
- 
-Before statement c = & d; :
- {b, &c} are aliased
-
-Before statement d = & e; :
- {b, &c} are aliased
-{c, &d} are aliased
-
-Before statement if (a) a = b; else a = & c; :
- {b, &c} are aliased
-{c, &d} are aliased
-{d, &e} are aliased
-
-Before statement a = b; :
- {b, &c} are aliased
-{c, &d} are aliased
-{d, &e} are aliased
-
-Before statement a = & c; :
- {b, &c} are aliased
-{c, &d} are aliased
-{d, &e} are aliased
-
-Before statement __retres = 0; :
- {d, &e} are aliased
-{a, b, &c} are aliased
-{c, &d} are aliased
-
-Before statement return __retres; :
- {d, &e} are aliased
-{a, b, &c} are aliased
-{c, &d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/function1.res.oracle b/src/plugins/alias/tests/basic/oracle/function1.res.oracle
index 18e2d97de5d8f4a66cf12f83e4254ac8c0ba8601..b6e57cde5b1b7fbc9e0787563118facf28049786 100644
--- a/src/plugins/alias/tests/basic/oracle/function1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/function1.res.oracle
@@ -1,40 +1,43 @@
 [kernel] Parsing function1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: swap(a,b);
+[alias] analysing function: swap
+[alias] analysing instruction: int *z = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: z = x;
+[alias] May-aliases at the end of instruction:
+  {x, z} are aliased
+[alias] analysing instruction: x = y;
+[alias] May-aliases at the end of instruction:
+  {x, y, z} are aliased
+[alias] analysing instruction: y = z;
+[alias] May-aliases at the end of instruction:
+  {x, y, z} are aliased
+[alias] May-aliases at the end of function swap:
+  {x, y, z} are aliased
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: swap(c,d);
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+  {c, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+  {c, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, b} are aliased
   {c, d} are aliased
-Before statement int *z = (int *)0; :
- 
-Before statement return __retres; :
- {a, b} are aliased
-{c, d} are aliased
-
-Before statement int *z = (int *)0; :
- 
-Before statement z = x; :
- 
-Before statement x = y; :
- {x, z} are aliased
-
-Before statement y = z; :
- {x, y, z} are aliased
-
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement swap(a,b); :
- 
-Before statement swap(c,d); :
- {a, b} are aliased
-
-Before statement __retres = 0; :
- {a, b} are aliased
-{c, d} are aliased
-
-Before statement return; :
- {x, y, z} are aliased
-
+[alias] analysing function: swap
+[alias] analysing instruction: int *z = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] May-aliases at the end of function swap:
+  {x, y, z} are aliased
diff --git a/src/plugins/alias/tests/basic/oracle/function2.res.oracle b/src/plugins/alias/tests/basic/oracle/function2.res.oracle
index 9f7ebeed03bc822b7dc0cf3b14998eec66d9ada5..fdeb62fc4526dd019743af335ad8b63b8e0c8395 100644
--- a/src/plugins/alias/tests/basic/oracle/function2.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/function2.res.oracle
@@ -1,22 +1,135 @@
 [kernel] Parsing function2.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = my_malloc(2);
+[alias] analysing function: my_malloc
+[alias] analysing instruction: int *res = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: res = (int *)malloc((size_t)size);
+[alias] May-aliases at the end of instruction:
+[alias] May-aliases at the end of function my_malloc:
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: b = my_malloc(3);
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
 [alias] May-aliases at the end of function main:
-Before statement int *res = (int *)0; :
- 
-Before statement int *res = (int *)0; :
- 
-Before statement res = (int *)malloc((size_t)size); :
- 
-Before statement return res; :
- 
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement a = my_malloc(2); :
- 
-Before statement b = my_malloc(3); :
- 
-Before statement __retres = 0; :
- 
-Before statement return __retres; :
- 
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: my_malloc
+[alias] analysing instruction: int *res = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] May-aliases at the end of function my_malloc:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb:
diff --git a/src/plugins/alias/tests/basic/oracle/function3.res.oracle b/src/plugins/alias/tests/basic/oracle/function3.res.oracle
index 45664b0859cc7abddb7a602a457da4005709a425..d1cea672b571d75ec1b0c5d20f6acc7eb0e1a944 100644
--- a/src/plugins/alias/tests/basic/oracle/function3.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/function3.res.oracle
@@ -1,54 +1,39 @@
 [kernel] Parsing function3.c (with preprocessing)
+[alias] analysing function: f1
+[alias] analysing instruction: int *tmp = x;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: x = y;
+[alias] May-aliases at the end of instruction:
+  {x, y, tmp} are aliased
+[alias] analysing instruction: y = tmp;
+[alias] May-aliases at the end of instruction:
+  {x, y, tmp} are aliased
+[alias] analysing instruction: __retres = (void *)0;
+[alias] May-aliases at the end of instruction:
+  {x, y, tmp} are aliased
+[alias] May-aliases at the end of function f1:
+  {x, y, tmp} are aliased
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: f1(a,b);
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: f1(c,d);
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+  {c, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+  {c, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, b} are aliased
   {c, d} are aliased
-Before statement return __retres; :
- {x, y, tmp} are aliased
-
-Before statement int *tmp = x; :
- 
-Before statement while (1) {
-                   x = y;
-                   y = tmp;
-                   break;
-                 } :
- {x, tmp} are aliased
-
-Before statement return __retres; :
- {a, b} are aliased
-{c, d} are aliased
-
-Before statement x = y;
-                 y = tmp;
-                 break; :
- {x, tmp} are aliased
-
-Before statement x = y; :
- {x, tmp} are aliased
-
-Before statement y = tmp; :
- {x, y, tmp} are aliased
-
-Before statement break; :
- {x, y, tmp} are aliased
-
-Before statement __retres = (void *)0; :
- {x, y, tmp} are aliased
-
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement f1(a,b); :
- 
-Before statement f1(c,d); :
- {a, b} are aliased
-
-Before statement __retres = 0; :
- {a, b} are aliased
-{c, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/function4.res.oracle b/src/plugins/alias/tests/basic/oracle/function4.res.oracle
index ea46094333a948875b2158a8d9ccf4137e9ff479..ed47931573bb2422f22d2be5f86431d8c23dfe39 100644
--- a/src/plugins/alias/tests/basic/oracle/function4.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/function4.res.oracle
@@ -1,22 +1,21 @@
 [kernel] Parsing function4.c (with preprocessing)
+[alias] analysing function: addr
+[alias] May-aliases at the end of function addr:
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int c = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = addr(& c);
+[alias] May-aliases at the end of instruction:
+  {a, &c} are aliased
+[alias] analysing instruction: b = & c;
+[alias] May-aliases at the end of instruction:
+  {a, b, &c} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, &c} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, &c} are aliased
-Before statement return x; :
- 
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int c = 0; :
- 
-Before statement a = addr(& c); :
- 
-Before statement b = & c; :
- {a, &c} are aliased
-
-Before statement __retres = 0; :
- {a, b, &c} are aliased
-
-Before statement return __retres; :
- {a, b, &c} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/function5.res.oracle b/src/plugins/alias/tests/basic/oracle/function5.res.oracle
index d2eb85709323df7edc56b5aa8db05bacf1aae937..fda3e6192259580117c613b03416698aecc7cb6c 100644
--- a/src/plugins/alias/tests/basic/oracle/function5.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/function5.res.oracle
@@ -1,47 +1,27 @@
 [kernel] Parsing function5.c (with preprocessing)
+[alias] analysing function: choice
+[alias] analysing instruction: int c = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = x;
+[alias] May-aliases at the end of instruction:
+  {x, __retres} are aliased
+[alias] analysing instruction: __retres = y;
+[alias] May-aliases at the end of instruction:
+  {y, __retres} are aliased
+[alias] May-aliases at the end of function choice:
+  {x, y, __retres} are aliased
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: c = choice(a,b);
+[alias] May-aliases at the end of instruction:
+  {a, b, c} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, c} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, c} are aliased
-Before statement goto return_label; :
- {x, __retres} are aliased
-
-Before statement __retres = y;
-                 goto return_label; :
- 
-Before statement int c = 0; :
- 
-Before statement goto return_label; :
- {y, __retres} are aliased
-
-Before statement return_label: return __retres; :
- {x, y, __retres} are aliased
-
-Before statement if (c) {
-                   __retres = x;
-                   goto return_label;
-                 }
-                 else {
-                   __retres = y;
-                   goto return_label;
-                 } :
- 
-Before statement return __retres; :
- {a, b, c} are aliased
-
-Before statement __retres = x; :
- 
-Before statement __retres = y; :
- 
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement c = choice(a,b); :
- 
-Before statement __retres = 0; :
- {a, b, c} are aliased
-
-Before statement __retres = x;
-                 goto return_label; :
- 
diff --git a/src/plugins/alias/tests/basic/oracle/if_then1.res.oracle b/src/plugins/alias/tests/basic/oracle/if_then1.res.oracle
index 9409d446e82f78cd705572b02598fd96a2054d1d..287860520ec412ce38902cb9bf5b150455e79122 100644
--- a/src/plugins/alias/tests/basic/oracle/if_then1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/if_then1.res.oracle
@@ -1,37 +1,32 @@
 [kernel] Parsing if_then1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: a = & x;
+[alias] May-aliases at the end of instruction:
+  {a, &x} are aliased
+[alias] analysing instruction: b = & y;
+[alias] May-aliases at the end of instruction:
+  {a, &x} are aliased
+  {b, &y} are aliased
+[alias] analysing instruction: y = & z;
+[alias] May-aliases at the end of instruction:
+  {a, &x} are aliased
+  {b, &y} are aliased
+  {y, &z} are aliased
+[alias] analysing instruction: y = & x;
+[alias] May-aliases at the end of instruction:
+  {b, &y} are aliased
+  {a, y, &x} are aliased
+[alias] analysing instruction: c = & y;
+[alias] May-aliases at the end of instruction:
+  {x, z} are aliased
+  {b, c, &y} are aliased
+  {a, y, &x, &z} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {x, z} are aliased
+  {b, c, &y} are aliased
+  {a, y, &x, &z} are aliased
 [alias] May-aliases at the end of function main:
   {x, z} are aliased
   {b, c, &y} are aliased
   {a, y, &x, &z} are aliased
-Before statement a = & x; :
- 
-Before statement b = & y; :
- {a, &x} are aliased
-
-Before statement if (p) y = & z; else y = & x; :
- {a, &x} are aliased
-{b, &y} are aliased
-
-Before statement y = & z; :
- {a, &x} are aliased
-{b, &y} are aliased
-
-Before statement y = & x; :
- {a, &x} are aliased
-{b, &y} are aliased
-
-Before statement c = & y; :
- {a, y, &x, &z} are aliased
-{x, z} are aliased
-{b, &y} are aliased
-
-Before statement __retres = 0; :
- {x, z} are aliased
-{b, c, &y} are aliased
-{a, y, &x, &z} are aliased
-
-Before statement return __retres; :
- {x, z} are aliased
-{b, c, &y} are aliased
-{a, y, &x, &z} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/switch1.res.oracle b/src/plugins/alias/tests/basic/oracle/switch1.res.oracle
index e028f12d8d38f09723c26012dadb4339ab69b387..857747d83302c2acec12f304aa857946ebd95ccb 100644
--- a/src/plugins/alias/tests/basic/oracle/switch1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/switch1.res.oracle
@@ -1,36 +1,23 @@
 [kernel] Parsing switch1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int e = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: case 1: a = d;
+[alias] May-aliases at the end of instruction:
+  {a, d} are aliased
+[alias] analysing instruction: case 2: b = d;
+[alias] May-aliases at the end of instruction:
+  {b, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, d} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement int e = 0; :
- 
-Before statement switch (e) {
-                   case 1: a = d;
-                   break;
-                   case 2: b = d;
-                   break;
-                 } :
- 
-Before statement case 1: a = d; :
- 
-Before statement break; :
- {a, d} are aliased
-
-Before statement case 2: b = d; :
- 
-Before statement break; :
- {b, d} are aliased
-
-Before statement __retres = 0; :
- {a, b, d} are aliased
-
-Before statement return __retres; :
- {a, b, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/switch2.res.oracle b/src/plugins/alias/tests/basic/oracle/switch2.res.oracle
index 6fcd78115e67ea11ee2c2064a3b6396a82b4eb3e..141cc19b1c3ee26899a6ba4f7c8439520af1a5b3 100644
--- a/src/plugins/alias/tests/basic/oracle/switch2.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/switch2.res.oracle
@@ -1,39 +1,26 @@
 [kernel] Parsing switch2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *d = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int e = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: case 1: a = d;
+[alias] May-aliases at the end of instruction:
+  {a, d} are aliased
+[alias] analysing instruction: case 2: b = d;
+[alias] May-aliases at the end of instruction:
+  {b, d} are aliased
+[alias] analysing instruction: default: c = d;
+[alias] May-aliases at the end of instruction:
+  {c, d} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b, c, d} are aliased
 [alias] May-aliases at the end of function main:
   {a, b, c, d} are aliased
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement int *d = (int *)0; :
- 
-Before statement int e = 0; :
- 
-Before statement switch (e) {
-                   case 1: a = d;
-                   break;
-                   case 2: b = d;
-                   break;
-                   default: c = d;
-                 } :
- 
-Before statement case 1: a = d; :
- 
-Before statement break; :
- {a, d} are aliased
-
-Before statement case 2: b = d; :
- 
-Before statement break; :
- {b, d} are aliased
-
-Before statement default: c = d; :
- 
-Before statement __retres = 0; :
- {a, b, c, d} are aliased
-
-Before statement return __retres; :
- {a, b, c, d} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/while_for1.res.oracle b/src/plugins/alias/tests/basic/oracle/while_for1.res.oracle
index cc8081857b01908f62d1f6e5089add770225c2b7..a4e37106253af3a3ec668a07edce55c63160177d 100644
--- a/src/plugins/alias/tests/basic/oracle/while_for1.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/while_for1.res.oracle
@@ -1,33 +1,127 @@
 [kernel] Parsing while_for1.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: int *s = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int idx = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: s = (int *)malloc((size_t)idx);
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: idx ++;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: s = (int *)malloc((size_t)idx);
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
 [alias] May-aliases at the end of function main:
-Before statement int *s = (int *)0; :
- 
-Before statement {
-                   int idx = 0;
-                   while (idx < 10) {
-                     s = (int *)malloc((size_t)idx);
-                     idx ++;
-                   }
-                 } :
- 
-Before statement int idx = 0; :
- 
-Before statement while (idx < 10) {
-                   s = (int *)malloc((size_t)idx);
-                   idx ++;
-                 } :
- 
-Before statement if (! (idx < 10)) break; :
- 
-Before statement break; :
- 
-Before statement s = (int *)malloc((size_t)idx); :
- 
-Before statement s = (int *)malloc((size_t)idx); :
- 
-Before statement idx ++; :
- 
-Before statement __retres = 0; :
- 
-Before statement return __retres; :
- 
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb:
diff --git a/src/plugins/alias/tests/basic/oracle/while_for2.res.oracle b/src/plugins/alias/tests/basic/oracle/while_for2.res.oracle
index 597bc30773b6ee85751ec8c73646f05443f48d19..02504d97a2b77d6755d3ff029d662d3c0324a053 100644
--- a/src/plugins/alias/tests/basic/oracle/while_for2.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/while_for2.res.oracle
@@ -1,43 +1,16 @@
 [kernel] Parsing while_for2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
 [alias] May-aliases at the end of function main:
   {a, b} are aliased
-Before statement return __retres; :
- {a, b} are aliased
-
-Before statement int *a = (int *)0; :
- 
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement while (1) {
-                   a = b;
-                   break;
-                 } :
- 
-Before statement a = b;
-                 break; :
- 
-Before statement a = b; :
- 
-Before statement break; :
- {a, b} are aliased
-
-Before statement while (1) {
-                   break;
-                   a = c;
-                   break;
-                 } :
- {a, b} are aliased
-
-Before statement break;
-                 a = c;
-                 break; :
- {a, b} are aliased
-
-Before statement break; :
- {a, b} are aliased
-
-Before statement __retres = 0; :
- {a, b} are aliased
-
diff --git a/src/plugins/alias/tests/basic/oracle/while_for3.res.oracle b/src/plugins/alias/tests/basic/oracle/while_for3.res.oracle
index 6cd62dca8623387b6153af0a777989669ec9818a..46bef75b26708905fc0da66a3ef7acbc0784ae2d 100644
--- a/src/plugins/alias/tests/basic/oracle/while_for3.res.oracle
+++ b/src/plugins/alias/tests/basic/oracle/while_for3.res.oracle
@@ -1,59 +1,24 @@
 [kernel] Parsing while_for3.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: int *a = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *b = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *c = (int *)0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int i = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: __Cont: i ++;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: a = b;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a, b} are aliased
 [alias] May-aliases at the end of function main:
   {a, b} are aliased
-Before statement __retres = 0; :
- {a, b} are aliased
-
-Before statement int *a = (int *)0; :
- 
-Before statement return __retres; :
- {a, b} are aliased
-
-Before statement int *b = (int *)0; :
- 
-Before statement int *c = (int *)0; :
- 
-Before statement {
-                   int i = 0;
-                   while (i < 10) {
-                     a = b;
-                     goto __Cont;
-                     a = c;
-                     __Cont: i ++;
-                   }
-                 } :
- 
-Before statement int i = 0; :
- 
-Before statement while (i < 10) {
-                   a = b;
-                   goto __Cont;
-                   a = c;
-                   __Cont: i ++;
-                 } :
- {a, b} are aliased
-
-Before statement if (! (i < 10)) break; :
- {a, b} are aliased
-
-Before statement break; :
- {a, b} are aliased
-
-Before statement a = b;
-                 goto __Cont;
-                 a = c; :
- {a, b} are aliased
-
-Before statement a = b;
-                 goto __Cont; :
- {a, b} are aliased
-
-Before statement a = b; :
- {a, b} are aliased
-
-Before statement goto __Cont; :
- {a, b} are aliased
-
-Before statement __Cont: i ++; :
- {a, b} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/array1.res.oracle b/src/plugins/alias/tests/offsets/oracle/array1.res.oracle
index a53c74c08487694afb33716492889cfb28b38e56..a4e66896abccb2febc2c47213595fcf58922ce6d 100644
--- a/src/plugins/alias/tests/offsets/oracle/array1.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/array1.res.oracle
@@ -1,23 +1,22 @@
 [kernel] Parsing array1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: tab[0] = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: tab[1] = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: tab[2] = tab[1] + 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *x = & tab[1];
+[alias] May-aliases at the end of instruction:
+  {x, &tab[0]} are aliased
+[alias] analysing instruction: int *y = & tab[2];
+[alias] May-aliases at the end of instruction:
+  {x, y, &tab[0]} are aliased
+[alias] analysing instruction: tab[3] = *x + *y;
+[alias] May-aliases at the end of instruction:
+  {x, y, &tab[0]} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {x, y, &tab[0]} are aliased
 [alias] May-aliases at the end of function main:
   {x, y, &tab[0]} are aliased
-Before statement tab[0] = 0; :
- 
-Before statement tab[1] = 1; :
- 
-Before statement tab[2] = tab[1] + 1; :
- 
-Before statement int *x = & tab[1]; :
- 
-Before statement int *y = & tab[2]; :
- {x, &tab[0]} are aliased
-
-Before statement tab[3] = *x + *y; :
- {x, y, &tab[0]} are aliased
-
-Before statement __retres = 0; :
- {x, y, &tab[0]} are aliased
-
-Before statement return __retres; :
- {x, y, &tab[0]} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/array2.res.oracle b/src/plugins/alias/tests/offsets/oracle/array2.res.oracle
index 8ad1a4522ed96890c8f9f2175f9f8e6445175f77..079b9221eddf6f8240ca09051791ad3abe7eff32 100644
--- a/src/plugins/alias/tests/offsets/oracle/array2.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/array2.res.oracle
@@ -1,18 +1,17 @@
 [kernel] Parsing array2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: mat[0][0] = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[0][1] = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *x = mat[1];
+[alias] May-aliases at the end of instruction:
+  {*x, &mat[0]} are aliased
+[alias] analysing instruction: *y = *(*(x + 0));
+[alias] May-aliases at the end of instruction:
+  {*x, &mat[0]} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {*x, &mat[0]} are aliased
 [alias] May-aliases at the end of function main:
   {*x, &mat[0]} are aliased
-Before statement mat[0][0] = 0; :
- 
-Before statement mat[0][1] = 1; :
- 
-Before statement *x = mat[1]; :
- 
-Before statement *y = *(*(x + 0)); :
- {*x, &mat[0]} are aliased
-
-Before statement __retres = 0; :
- {*x, &mat[0]} are aliased
-
-Before statement return __retres; :
- {*x, &mat[0]} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/collapse1.res.oracle b/src/plugins/alias/tests/offsets/oracle/collapse1.res.oracle
index 5d116c4ee27a733a8c9c6fe50210ba6ef0c556e5..51b2107ef98e603c7f5d3a3d549d581ad7d70884 100644
--- a/src/plugins/alias/tests/offsets/oracle/collapse1.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/collapse1.res.oracle
@@ -1,37 +1,21 @@
 [kernel] Parsing collapse1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: tab[0] = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: tab[1] = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: tab[2] = tab[1] + 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int x = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int i = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: x = tab[i];
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i ++;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: x = tab[i];
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
 [alias] May-aliases at the end of function main:
-Before statement tab[0] = 0; :
- 
-Before statement tab[1] = 1; :
- 
-Before statement tab[2] = tab[1] + 1; :
- 
-Before statement int x = 0; :
- 
-Before statement {
-                   int i = 0;
-                   while (i < 2) {
-                     x = tab[i];
-                     i ++;
-                   }
-                 } :
- 
-Before statement int i = 0; :
- 
-Before statement while (i < 2) {
-                   x = tab[i];
-                   i ++;
-                 } :
- 
-Before statement if (! (i < 2)) break; :
- 
-Before statement break; :
- 
-Before statement x = tab[i]; :
- 
-Before statement i ++; :
- 
-Before statement __retres = 0; :
- 
-Before statement return __retres; :
- 
diff --git a/src/plugins/alias/tests/offsets/oracle/collapse2.res.oracle b/src/plugins/alias/tests/offsets/oracle/collapse2.res.oracle
index ca058b7df28969b9e40e6a319a5d3093cf0847a0..ae37ec3288a950fdc8a7fdef9592971e1c69779c 100644
--- a/src/plugins/alias/tests/offsets/oracle/collapse2.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/collapse2.res.oracle
@@ -1,18 +1,17 @@
 [kernel] Parsing collapse2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: mat[0][0] = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[0][1] = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int i = 2;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[1][i] = i;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i ++;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[1][i] = 2;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
 [alias] May-aliases at the end of function main:
-Before statement mat[0][0] = 0; :
- 
-Before statement mat[0][1] = 1; :
- 
-Before statement int i = 2; :
- 
-Before statement mat[1][i] = i; :
- 
-Before statement i ++; :
- 
-Before statement mat[1][i] = 2; :
- 
-Before statement __retres = 0; :
- 
-Before statement return __retres; :
- 
diff --git a/src/plugins/alias/tests/offsets/oracle/collapse3.res.oracle b/src/plugins/alias/tests/offsets/oracle/collapse3.res.oracle
index e81f32e44cf5f94a530bb091f20c94ba3b787bdd..656e44bb1fa47ebba0320151ad50c8e25c0522d7 100644
--- a/src/plugins/alias/tests/offsets/oracle/collapse3.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/collapse3.res.oracle
@@ -1,18 +1,17 @@
 [kernel] Parsing collapse3.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: mat[0][0] = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[0][1] = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int i = 2;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[i][1] = i;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i ++;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: mat[i][1] = 2;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
 [alias] May-aliases at the end of function main:
-Before statement mat[0][0] = 0; :
- 
-Before statement mat[0][1] = 1; :
- 
-Before statement int i = 2; :
- 
-Before statement mat[i][1] = i; :
- 
-Before statement i ++; :
- 
-Before statement mat[i][1] = 2; :
- 
-Before statement __retres = 0; :
- 
-Before statement return __retres; :
- 
diff --git a/src/plugins/alias/tests/offsets/oracle/nested1.res.oracle b/src/plugins/alias/tests/offsets/oracle/nested1.res.oracle
index c9fb776f973d4d4b954e198e75166ee9631d5430..e75f816200c9ed621488d497da40828c84568060 100644
--- a/src/plugins/alias/tests/offsets/oracle/nested1.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/nested1.res.oracle
@@ -1,88 +1,199 @@
 [kernel] Parsing nested1.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t x2 = {.a = 1, .b = 2};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: tab_y[0] = & x1;
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1} are aliased
+[alias] analysing instruction: tab_y[1] = & x2;
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: st_2_t *z1 = malloc(sizeof(st_2_t));
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: st_2_t *z2 = malloc(sizeof(st_2_t));
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: st_3_t *t = malloc(sizeof(st_3_t));
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: int *a = malloc(sizeof(int));
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: int *b = malloc(sizeof(int));
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: *a = 0;
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: *b = 5;
+[alias] May-aliases at the end of instruction:
+  {tab_y[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: z1->s = (struct struct_1_t *)tab_y[0];
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, tab_y[0], &x1, &x2} are aliased
+[alias] analysing instruction: z2->s = (struct struct_1_t *)tab_y[1];
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+[alias] analysing instruction: z1->c = a;
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+  {z1->c, a} are aliased
+[alias] analysing instruction: z2->c = b;
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+  {z1->c, a} are aliased
+  {z2->c, b} are aliased
+[alias] analysing instruction: t->t = (struct struct_2_t *)z1;
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+  {z1->c, a} are aliased
+  {z2->c, b} are aliased
+  {t->t, z1} are aliased
+[alias] analysing instruction: t->d = a;
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+  {z2->c, b} are aliased
+  {t->t, z1} are aliased
+  {z1->c, t->d, a} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {x1, x2} are aliased
+  {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
+  {z2->c, b} are aliased
+  {t->t, z1} are aliased
+  {z1->c, t->d, a} are aliased
 [alias] May-aliases at the end of function main:
   {x1, x2} are aliased
   {z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
   {z2->c, b} are aliased
   {t->t, z1} are aliased
   {z1->c, t->d, a} are aliased
-Before statement t->t = (struct struct_2_t *)z1; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-{z1->c, a} are aliased
-{z2->c, b} are aliased
-
-Before statement t->d = a; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-{z1->c, a} are aliased
-{z2->c, b} are aliased
-{t->t, z1} are aliased
-
-Before statement st_1_t x1 = {.a = 0, .b = 1}; :
- 
-Before statement __retres = 0; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-{z2->c, b} are aliased
-{t->t, z1} are aliased
-{z1->c, t->d, a} are aliased
-
-Before statement st_1_t x2 = {.a = 1, .b = 2}; :
- 
-Before statement tab_y[0] = & x1; :
- 
-Before statement return __retres; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-{z2->c, b} are aliased
-{t->t, z1} are aliased
-{z1->c, t->d, a} are aliased
-
-Before statement tab_y[1] = & x2; :
- {tab_y[0], &x1} are aliased
-
-Before statement st_2_t *z1 = malloc(sizeof(st_2_t)); :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement st_2_t *z2 = malloc(sizeof(st_2_t)); :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement st_3_t *t = malloc(sizeof(st_3_t)); :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement int *a = malloc(sizeof(int)); :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement int *b = malloc(sizeof(int)); :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement *a = 0; :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement *b = 5; :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement z1->s = (struct struct_1_t *)tab_y[0]; :
- {tab_y[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement z2->s = (struct struct_1_t *)tab_y[1]; :
- {x1, x2} are aliased
-{z1->s, tab_y[0], &x1, &x2} are aliased
-
-Before statement z1->c = a; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-
-Before statement z2->c = b; :
- {x1, x2} are aliased
-{z1->s, z2->s, tab_y[0], &x1, &x2} are aliased
-{z1->c, a} are aliased
-
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb:
diff --git a/src/plugins/alias/tests/offsets/oracle/nested2.res.oracle b/src/plugins/alias/tests/offsets/oracle/nested2.res.oracle
index 36fc82c09fac96d711fa67d6b70968aba8caaffd..ea8759ffcda1c332f69b2105260e3540c417d75e 100644
--- a/src/plugins/alias/tests/offsets/oracle/nested2.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/nested2.res.oracle
@@ -1,50 +1,161 @@
 [kernel] Parsing nested2.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t x2 = {.a = 2, .b = 3};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_2_t *z1 = malloc(sizeof(st_2_t));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_3_t *t = malloc(sizeof(st_3_t));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: int *a = malloc(sizeof(int));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *a = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: z1->s[0] = (struct struct_1_t *)(& x1);
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1} are aliased
+[alias] analysing instruction: z1->s[1] = (struct struct_1_t *)(& x2);
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: z1->c = a;
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+  {z1->c, a} are aliased
+[alias] analysing instruction: t->t = (struct struct_2_t *)z1;
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+  {z1->c, a} are aliased
+  {t->t, z1} are aliased
+[alias] analysing instruction: t->d = a;
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+  {t->t, z1} are aliased
+  {z1->c, t->d, a} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {z1->s[0], &x1, &x2} are aliased
+  {x1, x2} are aliased
+  {t->t, z1} are aliased
+  {z1->c, t->d, a} are aliased
 [alias] May-aliases at the end of function main:
   {z1->s[0], &x1, &x2} are aliased
   {x1, x2} are aliased
   {t->t, z1} are aliased
   {z1->c, t->d, a} are aliased
-Before statement st_1_t x1 = {.a = 0, .b = 1}; :
- 
-Before statement st_1_t x2 = {.a = 2, .b = 3}; :
- 
-Before statement st_2_t *z1 = malloc(sizeof(st_2_t)); :
- 
-Before statement st_3_t *t = malloc(sizeof(st_3_t)); :
- 
-Before statement int *a = malloc(sizeof(int)); :
- 
-Before statement *a = 0; :
- 
-Before statement z1->s[0] = (struct struct_1_t *)(& x1); :
- 
-Before statement z1->s[1] = (struct struct_1_t *)(& x2); :
- {z1->s[0], &x1} are aliased
-
-Before statement z1->c = a; :
- {z1->s[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement t->t = (struct struct_2_t *)z1; :
- {z1->s[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-{z1->c, a} are aliased
-
-Before statement t->d = a; :
- {z1->s[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-{z1->c, a} are aliased
-{t->t, z1} are aliased
-
-Before statement __retres = 0; :
- {z1->s[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-{t->t, z1} are aliased
-{z1->c, t->d, a} are aliased
-
-Before statement return __retres; :
- {z1->s[0], &x1, &x2} are aliased
-{x1, x2} are aliased
-{t->t, z1} are aliased
-{z1->c, t->d, a} are aliased
-
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb:
diff --git a/src/plugins/alias/tests/offsets/oracle/structure1.res.oracle b/src/plugins/alias/tests/offsets/oracle/structure1.res.oracle
index 96f68bb686ca57a303679fafd71b46025d64091f..acecc959147d2ccf95095a72e48ddd6d235becd9 100644
--- a/src/plugins/alias/tests/offsets/oracle/structure1.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/structure1.res.oracle
@@ -1,29 +1,28 @@
 [kernel] Parsing structure1.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_2_t y = {.a = 3, .c = 4};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t *p_x = & x;
+[alias] May-aliases at the end of instruction:
+  {p_x, &x} are aliased
+[alias] analysing instruction: st_2_t *p_y = & y;
+[alias] May-aliases at the end of instruction:
+  {p_x, &x} are aliased
+  {p_y, &y} are aliased
+[alias] analysing instruction: p_x->a = 3;
+[alias] May-aliases at the end of instruction:
+  {p_x, &x} are aliased
+  {p_y, &y} are aliased
+[alias] analysing instruction: p_x = (st_1_t *)p_y;
+[alias] May-aliases at the end of instruction:
+  {p_x, p_y, &x, &y} are aliased
+  {x, y} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {p_x, p_y, &x, &y} are aliased
+  {x, y} are aliased
 [alias] May-aliases at the end of function main:
   {p_x, p_y, &x, &y} are aliased
   {x, y} are aliased
-Before statement st_1_t x = {.a = 0, .b = 1}; :
- 
-Before statement st_2_t y = {.a = 3, .c = 4}; :
- 
-Before statement st_1_t *p_x = & x; :
- 
-Before statement st_2_t *p_y = & y; :
- {p_x, &x} are aliased
-
-Before statement p_x->a = 3; :
- {p_x, &x} are aliased
-{p_y, &y} are aliased
-
-Before statement p_x = (st_1_t *)p_y; :
- {p_x, &x} are aliased
-{p_y, &y} are aliased
-
-Before statement __retres = 0; :
- {p_x, p_y, &x, &y} are aliased
-{x, y} are aliased
-
-Before statement return __retres; :
- {p_x, p_y, &x, &y} are aliased
-{x, y} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/structure2.res.oracle b/src/plugins/alias/tests/offsets/oracle/structure2.res.oracle
index 36f888d74c7b4679471b55d21ab5deed72ae1e27..cd8369ba04387bf4edf3ff952dcd95c6e64a4622 100644
--- a/src/plugins/alias/tests/offsets/oracle/structure2.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/structure2.res.oracle
@@ -1,21 +1,20 @@
 [kernel] Parsing structure2.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t x2 = {.a = 1, .b = 2};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_2_t y = {.s = (struct struct_1_t *)(& x1), .c = 4};
+[alias] May-aliases at the end of instruction:
+  {y.s, &x1} are aliased
+[alias] analysing instruction: y.s = (struct struct_1_t *)(& x2);
+[alias] May-aliases at the end of instruction:
+  {y.s, &x1, &x2} are aliased
+  {x1, x2} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {y.s, &x1, &x2} are aliased
+  {x1, x2} are aliased
 [alias] May-aliases at the end of function main:
   {y.s, &x1, &x2} are aliased
   {x1, x2} are aliased
-Before statement st_1_t x1 = {.a = 0, .b = 1}; :
- 
-Before statement st_1_t x2 = {.a = 1, .b = 2}; :
- 
-Before statement st_2_t y = {.s = (struct struct_1_t *)(& x1), .c = 4}; :
- 
-Before statement y.s = (struct struct_1_t *)(& x2); :
- {y.s, &x1} are aliased
-
-Before statement __retres = 0; :
- {y.s, &x1, &x2} are aliased
-{x1, x2} are aliased
-
-Before statement return __retres; :
- {y.s, &x1, &x2} are aliased
-{x1, x2} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/structure3.res.oracle b/src/plugins/alias/tests/offsets/oracle/structure3.res.oracle
index 4a64164df6945fe40a1e712e38b29a59af047e84..348342593362321631b1e74a25104723609f22d3 100644
--- a/src/plugins/alias/tests/offsets/oracle/structure3.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/structure3.res.oracle
@@ -1,45 +1,46 @@
 [kernel] Parsing structure3.c (with preprocessing)
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t x2 = {.a = 1, .b = 2};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_2_t y1 =
+                           {.s = (struct struct_1_t *)(& x1), .c = 3};
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+[alias] analysing instruction: st_2_t y2 =
+                           {.s = (struct struct_1_t *)(& x2), .c = 4};
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+  {y2.s, &x2} are aliased
+[alias] analysing instruction: st_3_t z = {.t = (struct struct_2_t *)(& y1), .d = 5};
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+  {y2.s, &x2} are aliased
+  {z.t, &y1} are aliased
+[alias] analysing instruction: z.t = (struct struct_2_t *)(& y2);
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+  {y2.s, &x2} are aliased
+  {z.t, &y1, &y2} are aliased
+  {y1, y2} are aliased
+[alias] analysing instruction: y1.c = z.d;
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+  {y2.s, &x2} are aliased
+  {z.t, &y1, &y2} are aliased
+  {y1, y2} are aliased
+  {y1.c, y2.c} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {y1.s, &x1} are aliased
+  {y2.s, &x2} are aliased
+  {z.t, &y1, &y2} are aliased
+  {y1, y2} are aliased
+  {y1.c, y2.c} are aliased
 [alias] May-aliases at the end of function main:
   {y1.s, &x1} are aliased
   {y2.s, &x2} are aliased
   {z.t, &y1, &y2} are aliased
   {y1, y2} are aliased
   {y1.c, y2.c} are aliased
-Before statement st_1_t x1 = {.a = 0, .b = 1}; :
- 
-Before statement st_1_t x2 = {.a = 1, .b = 2}; :
- 
-Before statement st_2_t y1 = {.s = (struct struct_1_t *)(& x1), .c = 3}; :
- 
-Before statement st_2_t y2 = {.s = (struct struct_1_t *)(& x2), .c = 4}; :
- {y1.s, &x1} are aliased
-
-Before statement st_3_t z = {.t = (struct struct_2_t *)(& y1), .d = 5}; :
- {y1.s, &x1} are aliased
-{y2.s, &x2} are aliased
-
-Before statement z.t = (struct struct_2_t *)(& y2); :
- {y1.s, &x1} are aliased
-{y2.s, &x2} are aliased
-{z.t, &y1} are aliased
-
-Before statement y1.c = z.d; :
- {y1.s, &x1} are aliased
-{y2.s, &x2} are aliased
-{z.t, &y1, &y2} are aliased
-{y1, y2} are aliased
-
-Before statement __retres = 0; :
- {y1.s, &x1} are aliased
-{y2.s, &x2} are aliased
-{z.t, &y1, &y2} are aliased
-{y1, y2} are aliased
-{y1.c, y2.c} are aliased
-
-Before statement return __retres; :
- {y1.s, &x1} are aliased
-{y2.s, &x2} are aliased
-{z.t, &y1, &y2} are aliased
-{y1, y2} are aliased
-{y1.c, y2.c} are aliased
-
diff --git a/src/plugins/alias/tests/offsets/oracle/structure4.res.oracle b/src/plugins/alias/tests/offsets/oracle/structure4.res.oracle
index f96627f383bc4132c9d3fd33bf192d7a1577d4ff..80f114c1836194ed2bea80d9c5e99e594296745f 100644
--- a/src/plugins/alias/tests/offsets/oracle/structure4.res.oracle
+++ b/src/plugins/alias/tests/offsets/oracle/structure4.res.oracle
@@ -1,25 +1,136 @@
 [kernel] Parsing structure4.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: st_1_t x1 = {.a = 0, .b = 1};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t x2 = {.a = 1, .b = 2};
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_1_t *y1 = malloc(sizeof(st_1_t));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: st_2_t *z = malloc(sizeof(st_2_t));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: y1 = & x1;
+[alias] May-aliases at the end of instruction:
+  {y1, &x1} are aliased
+[alias] analysing instruction: z->s = (struct struct_1_t *)y1;
+[alias] May-aliases at the end of instruction:
+  {z->s, y1, &x1} are aliased
+[alias] analysing instruction: z->c = 6;
+[alias] May-aliases at the end of instruction:
+  {z->s, y1, &x1} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {z->s, y1, &x1} are aliased
 [alias] May-aliases at the end of function main:
   {z->s, y1, &x1} are aliased
-Before statement st_1_t x1 = {.a = 0, .b = 1}; :
- 
-Before statement st_1_t x2 = {.a = 1, .b = 2}; :
- 
-Before statement st_1_t *y1 = malloc(sizeof(st_1_t)); :
- 
-Before statement st_2_t *z = malloc(sizeof(st_2_t)); :
- 
-Before statement y1 = & x1; :
- 
-Before statement z->s = (struct struct_1_t *)y1; :
- {y1, &x1} are aliased
-
-Before statement z->c = 6; :
- {z->s, y1, &x1} are aliased
-
-Before statement __retres = 0; :
- {z->s, y1, &x1} are aliased
-
-Before statement return __retres; :
- {z->s, y1, &x1} are aliased
-
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb:
diff --git a/src/plugins/alias/tests/real_world/oracle/example1.res.oracle b/src/plugins/alias/tests/real_world/oracle/example1.res.oracle
index d33b5b978a068e2c3c3e8293ade77a050c9b6666..6d0e0d4fa68f1e5eac28e6d44c25d28ef6c5f1a4 100644
--- a/src/plugins/alias/tests/real_world/oracle/example1.res.oracle
+++ b/src/plugins/alias/tests/real_world/oracle/example1.res.oracle
@@ -1,265 +1,447 @@
 [kernel] Parsing example1.c (with preprocessing)
+[alias] analysing function: _Exit
+[alias] May-aliases at the end of function _Exit:
+[alias] analysing function: __fc_fpclassify
+[alias] May-aliases at the end of function __fc_fpclassify:
+[alias] analysing function: __fc_fpclassifyf
+[alias] May-aliases at the end of function __fc_fpclassifyf:
+[alias] analysing function: __fc_infinity
+[alias] May-aliases at the end of function __fc_infinity:
+[alias] analysing function: __fc_nan
+[alias] May-aliases at the end of function __fc_nan:
+[alias] analysing function: __finite
+[alias] May-aliases at the end of function __finite:
+[alias] analysing function: __finitef
+[alias] May-aliases at the end of function __finitef:
+[alias] analysing function: abort
+[alias] May-aliases at the end of function abort:
+[alias] analysing function: abs
+[alias] May-aliases at the end of function abs:
+[alias] analysing function: acos
+[alias] May-aliases at the end of function acos:
+[alias] analysing function: acosf
+[alias] May-aliases at the end of function acosf:
+[alias] analysing function: acosh
+[alias] May-aliases at the end of function acosh:
+[alias] analysing function: acoshf
+[alias] May-aliases at the end of function acoshf:
+[alias] analysing function: acoshl
+[alias] May-aliases at the end of function acoshl:
+[alias] analysing function: acosl
+[alias] May-aliases at the end of function acosl:
+[alias] analysing function: asin
+[alias] May-aliases at the end of function asin:
+[alias] analysing function: asinf
+[alias] May-aliases at the end of function asinf:
+[alias] analysing function: asinl
+[alias] May-aliases at the end of function asinl:
+[alias] analysing function: at_quick_exit
+[alias] May-aliases at the end of function at_quick_exit:
+[alias] analysing function: atan
+[alias] May-aliases at the end of function atan:
+[alias] analysing function: atan2
+[alias] May-aliases at the end of function atan2:
+[alias] analysing function: atan2f
+[alias] May-aliases at the end of function atan2f:
+[alias] analysing function: atan2l
+[alias] May-aliases at the end of function atan2l:
+[alias] analysing function: atanf
+[alias] May-aliases at the end of function atanf:
+[alias] analysing function: atanl
+[alias] May-aliases at the end of function atanl:
+[alias] analysing function: atexit
+[alias] May-aliases at the end of function atexit:
+[alias] analysing function: atof
+[alias] May-aliases at the end of function atof:
+[alias] analysing function: atoi
+[alias] May-aliases at the end of function atoi:
+[alias] analysing function: atol
+[alias] May-aliases at the end of function atol:
+[alias] analysing function: atoll
+[alias] May-aliases at the end of function atoll:
+[alias] analysing function: bsearch
+[alias] May-aliases at the end of function bsearch:
+[alias] analysing function: calloc
+[alias] May-aliases at the end of function calloc:
+[alias] analysing function: ceil
+[alias] May-aliases at the end of function ceil:
+[alias] analysing function: ceilf
+[alias] May-aliases at the end of function ceilf:
+[alias] analysing function: ceill
+[alias] May-aliases at the end of function ceill:
+[alias] analysing function: cos
+[alias] May-aliases at the end of function cos:
+[alias] analysing function: cosf
+[alias] May-aliases at the end of function cosf:
+[alias] analysing function: cosl
+[alias] May-aliases at the end of function cosl:
+[alias] analysing function: div
+[alias] May-aliases at the end of function div:
+[alias] analysing function: drand48
+[alias] May-aliases at the end of function drand48:
+[alias] analysing function: erand48
+[alias] May-aliases at the end of function erand48:
+[alias] analysing function: exit
+[alias] May-aliases at the end of function exit:
+[alias] analysing function: exp
+[alias] May-aliases at the end of function exp:
+[alias] analysing function: expf
+[alias] May-aliases at the end of function expf:
+[alias] analysing function: f1
+[alias] analysing instruction: ty *tmp = x;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = tmp->t2[*(tmp->n2)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: odata = tmp->t1[*(tmp->n1)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx = 0;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: tmp_1 = sin(*(idata + idx));
+[alias] analysing function: sin
+[alias] May-aliases at the end of function sin:
 [alias] Warning: a function with no return is employed in an assignment
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: *(odata + idx) = 0.5 * tmp_1;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx ++;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: tmp_1 = sin(*(idata + idx));
 [alias] Warning: a function with no return is employed in an assignment
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: swap(tmp->n1);
+[alias] analysing function: swap
+[alias] analysing instruction: *n = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: (*n) ++;
+[alias] May-aliases at the end of instruction:
+[alias] May-aliases at the end of function swap:
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = tmp->t2[*(tmp->n2)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: odata = tmp->t1[*(tmp->n1)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx = 0;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: tmp_1 = sin(*(idata + idx));
 [alias] Warning: a function with no return is employed in an assignment
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: *(odata + idx) = 0.5 * tmp_1;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx ++;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: swap(tmp->n1);
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
 [alias] Warning: Analysis is continuing but will not be sound
+[alias] May-aliases at the end of function f1:
+[alias] analysing function: f2
+[alias] analysing instruction: ty *tmp = x;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = tmp->t1[*(tmp->n1)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: odata = tmp->t2[*(tmp->n2)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx = 0;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: *(odata + idx) = (double)3 * *(idata + idx) + (double)1;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx ++;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: swap(tmp->n2);
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idata = tmp->t1[*(tmp->n1)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: odata = tmp->t2[*(tmp->n2)];
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx = 0;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: *(odata + idx) = (double)3 * *(idata + idx) + (double)1;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: idx ++;
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
+[alias] analysing instruction: swap(tmp->n2);
+[alias] May-aliases at the end of instruction:
+  {x, tmp} are aliased
 [alias] Warning: Analysis is continuing but will not be sound
+[alias] May-aliases at the end of function f2:
+[alias] analysing function: fabs
+[alias] May-aliases at the end of function fabs:
+[alias] analysing function: fabsf
+[alias] May-aliases at the end of function fabsf:
+[alias] analysing function: fabsl
+[alias] May-aliases at the end of function fabsl:
+[alias] analysing function: floor
+[alias] May-aliases at the end of function floor:
+[alias] analysing function: floorf
+[alias] May-aliases at the end of function floorf:
+[alias] analysing function: floorl
+[alias] May-aliases at the end of function floorl:
+[alias] analysing function: fmod
+[alias] May-aliases at the end of function fmod:
+[alias] analysing function: fmodf
+[alias] May-aliases at the end of function fmodf:
+[alias] analysing function: free
+[alias] May-aliases at the end of function free:
+[alias] analysing function: frexp
+[alias] May-aliases at the end of function frexp:
+[alias] analysing function: frexpf
+[alias] May-aliases at the end of function frexpf:
+[alias] analysing function: frexpl
+[alias] May-aliases at the end of function frexpl:
+[alias] analysing function: getenv
+[alias] May-aliases at the end of function getenv:
+[alias] analysing function: jrand48
+[alias] May-aliases at the end of function jrand48:
+[alias] analysing function: labs
+[alias] May-aliases at the end of function labs:
+[alias] analysing function: lcong48
+[alias] May-aliases at the end of function lcong48:
+[alias] analysing function: ldexp
+[alias] May-aliases at the end of function ldexp:
+[alias] analysing function: ldexpf
+[alias] May-aliases at the end of function ldexpf:
+[alias] analysing function: ldiv
+[alias] May-aliases at the end of function ldiv:
+[alias] analysing function: llabs
+[alias] May-aliases at the end of function llabs:
+[alias] analysing function: lldiv
+[alias] May-aliases at the end of function lldiv:
+[alias] analysing function: log
+[alias] May-aliases at the end of function log:
+[alias] analysing function: log10
+[alias] May-aliases at the end of function log10:
+[alias] analysing function: log10f
+[alias] May-aliases at the end of function log10f:
+[alias] analysing function: log10l
+[alias] May-aliases at the end of function log10l:
+[alias] analysing function: log2
+[alias] May-aliases at the end of function log2:
+[alias] analysing function: log2f
+[alias] May-aliases at the end of function log2f:
+[alias] analysing function: log2l
+[alias] May-aliases at the end of function log2l:
+[alias] analysing function: logf
+[alias] May-aliases at the end of function logf:
+[alias] analysing function: logl
+[alias] May-aliases at the end of function logl:
+[alias] analysing function: lrand48
+[alias] May-aliases at the end of function lrand48:
+[alias] analysing function: main
+[alias] analysing instruction: a = (ty *)malloc(sizeof(ty));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: b = (ty *)malloc(sizeof(ty));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i ++;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->n1 = (int *)malloc(sizeof(int));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: a->n2 = (int *)malloc(sizeof(int));
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *(a->n1) = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: *(a->n2) = 1;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: i = 0;
+[alias] May-aliases at the end of instruction:
+[alias] analysing instruction: b->t1[i] = a->t1[i];
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+[alias] analysing instruction: b->t2[i] = a->t2[i];
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+[alias] analysing instruction: i ++;
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+[alias] analysing instruction: b->t1[i] = a->t1[i];
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+[alias] analysing instruction: b->t2[i] = a->t2[i];
+[alias] May-aliases at the end of instruction:
+  {a->t2[0], b->t2[0]} are aliased
+  {a->t1[0], b->t1[0]} are aliased
+[alias] analysing instruction: b->n1 = a->n1;
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+  {a->n1, b->n1} are aliased
+[alias] analysing instruction: b->n2 = a->n2;
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+  {a->n1, b->n1} are aliased
+  {a->n2, b->n2} are aliased
+[alias] analysing instruction: f1(a);
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+  {a->n1, b->n1} are aliased
+  {a->n2, b->n2} are aliased
+[alias] analysing instruction: f2(b);
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+  {a->n1, b->n1} are aliased
+  {a->n2, b->n2} are aliased
+[alias] analysing instruction: __retres = 0;
+[alias] May-aliases at the end of instruction:
+  {a->t1[0], b->t1[0]} are aliased
+  {a->t2[0], b->t2[0]} are aliased
+  {a->n1, b->n1} are aliased
+  {a->n2, b->n2} are aliased
 [alias] May-aliases at the end of function main:
   {a->t1[0], b->t1[0]} are aliased
   {a->t2[0], b->t2[0]} are aliased
   {a->n1, b->n1} are aliased
   {a->n2, b->n2} are aliased
-Before statement b->t1[i] = a->t1[i]; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement idx = 0; :
- {x, tmp} are aliased
-
-Before statement b->t2[i] = a->t2[i]; :
- {a->t2[0], b->t2[0]} are aliased
-{a->t1[0], b->t1[0]} are aliased
-
-Before statement while (idx < 10) {
-                   *(odata + idx) = (double)3 * *(idata + idx) + (double)1;
-                   idx ++;
-                 } :
- {x, tmp} are aliased
-
-Before statement if (*n == 1) *n = 0; else (*n) ++; :
- 
-Before statement i ++; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement if (*n == 1) *n = 0; else (*n) ++; :
- 
-Before statement b->n1 = a->n1; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement if (! (idx < 10)) break; :
- {x, tmp} are aliased
-
-Before statement *n = 0; :
- 
-Before statement b->n2 = a->n2; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-{a->n1, b->n1} are aliased
-
-Before statement break; :
- {x, tmp} are aliased
-
-Before statement (*n) ++; :
- 
-Before statement f1(a); :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-{a->n1, b->n1} are aliased
-{a->n2, b->n2} are aliased
-
-Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; :
- {x, tmp} are aliased
-
-Before statement f2(b); :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-{a->n1, b->n1} are aliased
-{a->n2, b->n2} are aliased
-
-Before statement *(odata + idx) = (double)3 * *(idata + idx) + (double)1; :
- {x, tmp} are aliased
-
-Before statement __retres = 0; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-{a->n1, b->n1} are aliased
-{a->n2, b->n2} are aliased
-
-Before statement idx ++; :
- {x, tmp} are aliased
-
-Before statement ty *tmp = x; :
- 
-Before statement swap(tmp->n2); :
- {x, tmp} are aliased
-
-Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); :
- {x, tmp} are aliased
-
-Before statement return; :
- 
-Before statement while (1) {
-                   idata = tmp->t2[*(tmp->n2)];
-                   odata = tmp->t1[*(tmp->n1)];
-                   idx = 0;
-                   while (idx < 10) {
-                     {
-                       double tmp_1;
-                       tmp_1 = sin(*(idata + idx));
-                       *(odata + idx) = 0.5 * tmp_1;
-                     }
-                     idx ++;
-                   }
-                   swap(tmp->n1);
-                 } :
- {x, tmp} are aliased
-
-Before statement idata = tmp->t2[*(tmp->n2)];
-                 odata = tmp->t1[*(tmp->n1)];
-                 idx = 0;
-                 while (idx < 10) {
-                   {
-                     double tmp_1;
-                     tmp_1 = sin(*(idata + idx));
-                     *(odata + idx) = 0.5 * tmp_1;
-                   }
-                   idx ++;
-                 }
-                 swap(tmp->n1); :
- {x, tmp} are aliased
-
-Before statement a = (ty *)malloc(sizeof(ty)); :
- 
-Before statement idata = tmp->t2[*(tmp->n2)]; :
- {x, tmp} are aliased
-
-Before statement b = (ty *)malloc(sizeof(ty)); :
- 
-Before statement odata = tmp->t1[*(tmp->n1)]; :
- {x, tmp} are aliased
-
-Before statement i = 0; :
- 
-Before statement idx = 0; :
- {x, tmp} are aliased
-
-Before statement while (i < 2) {
-                   a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double));
-                   a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double));
-                   i ++;
-                 } :
- 
-Before statement while (idx < 10) {
-                   {
-                     double tmp_1;
-                     tmp_1 = sin(*(idata + idx));
-                     *(odata + idx) = 0.5 * tmp_1;
-                   }
-                   idx ++;
-                 } :
- {x, tmp} are aliased
-
-Before statement return __retres; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-{a->n1, b->n1} are aliased
-{a->n2, b->n2} are aliased
-
-Before statement if (! (i < 2)) break; :
- 
-Before statement if (! (idx < 10)) break; :
- {x, tmp} are aliased
-
-Before statement break; :
- 
-Before statement break; :
- {x, tmp} are aliased
-
-Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double));
-                 a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double)); :
- 
-Before statement {
-                   double tmp_1;
-                   tmp_1 = sin(*(idata + idx));
-                   *(odata + idx) = 0.5 * tmp_1;
-                 } :
- {x, tmp} are aliased
-
-Before statement a->t1[i] = (double *)malloc((unsigned long)10 * sizeof(double)); :
- 
-Before statement tmp_1 = sin(*(idata + idx));
-                 *(odata + idx) = 0.5 * tmp_1; :
- {x, tmp} are aliased
-
-Before statement a->t2[i] = (double *)malloc((unsigned long)10 * sizeof(double)); :
- 
-Before statement tmp_1 = sin(*(idata + idx)); :
- {x, tmp} are aliased
-
-Before statement i ++; :
- 
-Before statement *(odata + idx) = 0.5 * tmp_1; :
- {x, tmp} are aliased
-
-Before statement a->n1 = (int *)malloc(sizeof(int)); :
- 
-Before statement idx ++; :
- {x, tmp} are aliased
-
-Before statement a->n2 = (int *)malloc(sizeof(int)); :
- 
-Before statement swap(tmp->n1); :
- {x, tmp} are aliased
-
-Before statement *(a->n1) = 1; :
- 
-Before statement *(a->n2) = 1; :
- 
-Before statement i = 0; :
- 
-Before statement ty *tmp = x; :
- 
-Before statement while (i < 2) {
-                   b->t1[i] = a->t1[i];
-                   b->t2[i] = a->t2[i];
-                   i ++;
-                 } :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement idata = (double *)malloc((unsigned long)10 * sizeof(double)); :
- {x, tmp} are aliased
-
-Before statement while (1) {
-                   idata = tmp->t1[*(tmp->n1)];
-                   odata = tmp->t2[*(tmp->n2)];
-                   idx = 0;
-                   while (idx < 10) {
-                     *(odata + idx) = (double)3 * *(idata + idx) + (double)1;
-                     idx ++;
-                   }
-                   swap(tmp->n2);
-                 } :
- {x, tmp} are aliased
-
-Before statement if (! (i < 2)) break; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement idata = tmp->t1[*(tmp->n1)];
-                 odata = tmp->t2[*(tmp->n2)];
-                 idx = 0;
-                 while (idx < 10) {
-                   *(odata + idx) = (double)3 * *(idata + idx) + (double)1;
-                   idx ++;
-                 }
-                 swap(tmp->n2); :
- {x, tmp} are aliased
-
-Before statement break; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement idata = tmp->t1[*(tmp->n1)]; :
- {x, tmp} are aliased
-
-Before statement b->t1[i] = a->t1[i];
-                 b->t2[i] = a->t2[i]; :
- {a->t1[0], b->t1[0]} are aliased
-{a->t2[0], b->t2[0]} are aliased
-
-Before statement odata = tmp->t2[*(tmp->n2)]; :
- {x, tmp} are aliased
-
+[alias] analysing function: malloc
+[alias] May-aliases at the end of function malloc:
+[alias] analysing function: mblen
+[alias] May-aliases at the end of function mblen:
+[alias] analysing function: mbstowcs
+[alias] May-aliases at the end of function mbstowcs:
+[alias] analysing function: mbtowc
+[alias] May-aliases at the end of function mbtowc:
+[alias] analysing function: mkstemp
+[alias] May-aliases at the end of function mkstemp:
+[alias] analysing function: mkstemps
+[alias] May-aliases at the end of function mkstemps:
+[alias] analysing function: mrand48
+[alias] May-aliases at the end of function mrand48:
+[alias] analysing function: nan
+[alias] May-aliases at the end of function nan:
+[alias] analysing function: nanf
+[alias] May-aliases at the end of function nanf:
+[alias] analysing function: nanl
+[alias] May-aliases at the end of function nanl:
+[alias] analysing function: nrand48
+[alias] May-aliases at the end of function nrand48:
+[alias] analysing function: posix_memalign
+[alias] May-aliases at the end of function posix_memalign:
+[alias] analysing function: pow
+[alias] May-aliases at the end of function pow:
+[alias] analysing function: powf
+[alias] May-aliases at the end of function powf:
+[alias] analysing function: putenv
+[alias] May-aliases at the end of function putenv:
+[alias] analysing function: qsort
+[alias] May-aliases at the end of function qsort:
+[alias] analysing function: quick_exit
+[alias] May-aliases at the end of function quick_exit:
+[alias] analysing function: rand
+[alias] May-aliases at the end of function rand:
+[alias] analysing function: random
+[alias] May-aliases at the end of function random:
+[alias] analysing function: realloc
+[alias] May-aliases at the end of function realloc:
+[alias] analysing function: reallocarray
+[alias] May-aliases at the end of function reallocarray:
+[alias] analysing function: round
+[alias] May-aliases at the end of function round:
+[alias] analysing function: roundf
+[alias] May-aliases at the end of function roundf:
+[alias] analysing function: roundl
+[alias] May-aliases at the end of function roundl:
+[alias] analysing function: seed48
+[alias] May-aliases at the end of function seed48:
+[alias] analysing function: setenv
+[alias] May-aliases at the end of function setenv:
+[alias] analysing function: sin
+[alias] May-aliases at the end of function sin:
+[alias] analysing function: sinf
+[alias] May-aliases at the end of function sinf:
+[alias] analysing function: sinl
+[alias] May-aliases at the end of function sinl:
+[alias] analysing function: sqrt
+[alias] May-aliases at the end of function sqrt:
+[alias] analysing function: sqrtf
+[alias] May-aliases at the end of function sqrtf:
+[alias] analysing function: sqrtl
+[alias] May-aliases at the end of function sqrtl:
+[alias] analysing function: srand
+[alias] May-aliases at the end of function srand:
+[alias] analysing function: srand48
+[alias] May-aliases at the end of function srand48:
+[alias] analysing function: srandom
+[alias] May-aliases at the end of function srandom:
+[alias] analysing function: strtod
+[alias] May-aliases at the end of function strtod:
+[alias] analysing function: strtof
+[alias] May-aliases at the end of function strtof:
+[alias] analysing function: strtol
+[alias] May-aliases at the end of function strtol:
+[alias] analysing function: strtold
+[alias] May-aliases at the end of function strtold:
+[alias] analysing function: strtoll
+[alias] May-aliases at the end of function strtoll:
+[alias] analysing function: strtoul
+[alias] May-aliases at the end of function strtoul:
+[alias] analysing function: strtoull
+[alias] May-aliases at the end of function strtoull:
+[alias] analysing function: swap
+[alias] May-aliases at the end of function swap:
+[alias] analysing function: system
+[alias] May-aliases at the end of function system:
+[alias] analysing function: tan
+[alias] May-aliases at the end of function tan:
+[alias] analysing function: tanf
+[alias] May-aliases at the end of function tanf:
+[alias] analysing function: tanl
+[alias] May-aliases at the end of function tanl:
+[alias] analysing function: trunc
+[alias] May-aliases at the end of function trunc:
+[alias] analysing function: truncf
+[alias] May-aliases at the end of function truncf:
+[alias] analysing function: truncl
+[alias] May-aliases at the end of function truncl:
+[alias] analysing function: unsetenv
+[alias] May-aliases at the end of function unsetenv:
+[alias] analysing function: wcstombs
+[alias] May-aliases at the end of function wcstombs:
+[alias] analysing function: wctomb
+[alias] May-aliases at the end of function wctomb: