1 int f(int z) {
2 ++z;
3 return z;
4 }
5 void g(int&x , int* y) {
6 f(x);
7 ++y;
8 }
9 int main() {
10 int abc = 0;
11 int i = 1;
12 while (i <= 10){
13 g(abc, &i);
14 }
15 std::cout << ":" << i << "abc:" << abc << '\n';
16 std::cout << f(i);
17 abc += i;
18 }
- Slice Profile(abc): def={10,17}, use={1,2,5,6,13,15}, slines={1,2,5,7,10,13,15,17}, dvars={abc}, pointers={}, cfuncs={fun{1}, foo{1}}
- Slice Profile(i): def={11}, use={1,2,3,5,7,12,13,15,16,17}, slines={1,2,5,7,11,12,13,15,16,17}, dvars={abc}, pointers={}, cfuncs={fun{1}, foo{2}}
- Slice Profile(z):def={1}, use={2}, slines={1,2}, dvars={}, pointers={}, cfuncs={}
- Slice Profile(y): def={5}, use={7}, slines={5,7}, dvars={}, pointers={i}, cfuncs={}
- Slice Profile(x): def={5}, use={1,2,6}, slines={1,2,5,6}, dvars={}, pointers={abc}, cfuncs={fun{1}}