2 Finished checking --- no warnings
4 alias.c: (in function f)
5 alias.c:11:3: Possible undocumented modification of *a through alias *x: *x = 3
6 alias.c:14:3: Possible undocumented modification of *a through alias *y: *y = 4
7 alias.c:16:3: Undocumented modification of globp: globp = a
8 alias.c:17:25: Function returns with global variable globp aliasing parameter a
9 alias.c:21:7: Undocumented modification of globp: globp = z
10 alias.c:21:15: Variable z used before definition
11 alias.c:25:3: Undocumented modification of *globp: *globp = 4
12 alias.c:25:3: Possible undocumented modification of *a through alias *globp:
14 alias.c:28:3: Possible undocumented modification of *globp through alias *x:
16 alias.c:28:3: Possible undocumented modification of *a through alias *x: *x = 7
17 alias.c:31:3: Possible undocumented modification of glob through alias *x:
19 alias.c:38:3: Possible undocumented modification of **c through alias *x:
21 alias.c:40:3: Possible undocumented modification of **c through alias *a:
23 alias.c:41:3: Undocumented modification of *globp: *globp = 3
24 alias.c:41:3: Possible undocumented modification of *a through alias *globp:
26 alias.c:42:12: Function returns with global variable globp aliasing parameter a
27 alias.c: (in function h)
28 alias.c:49:3: Undocumented modification of a possible from call to mut_mod:
30 alias.c:51:3: Undocumented modification of b possible from call to mut_mod
31 (through alias a): mut_mod(a)
32 alias.c:55:12: Owned storage b not released before return
33 alias.c:52:3: Storage b becomes owned
35 Finished checking --- 19 code warnings, as expected
37 alias2.c: (in function f)
38 alias2.c:17:3: Variable lx used before definition
39 alias2.c:20:7: Possible undocumented modification of *a through alias *lx:
41 alias2.c:29:7: Possible undocumented modification of *a through alias *x:
43 alias2.c:34:7: Possible undocumented modification of **c through alias *x:
45 alias2.c:38:3: Possible undocumented modification of *a through alias *x:
47 alias2.c:38:3: Possible undocumented modification of **c through alias *x:
49 alias2.c:41:8: Undocumented modification of **c: **c = b
50 alias2.c:43:7: Possible undocumented modification of glob through alias *y:
52 alias2.c:43:7: Possible undocumented modification of *globp through alias *y:
54 alias2.c:44:7: Undocumented modification of globp: globp = a
55 alias2.c:53:3: Possible undocumented modification of glob through alias *a:
57 alias2.c:53:3: Undocumented modification of *a: *a = 3
58 alias2.c:54:3: Possible undocumented modification of *globp through alias *z:
60 alias2.c:54:3: Possible undocumented modification of *a through alias *z:
62 alias2.c:55:3: Undocumented modification of *globp: *globp = 5
63 alias2.c:55:3: Possible undocumented modification of *a through alias *globp:
65 alias2.c:56:12: Function returns with global variable globp aliasing parameter
68 Finished checking --- 17 code warnings, as expected
70 alias3.c: (in function model)
71 alias3.c:16:3: Undocumented modification of gst.a: gst.a = 3
72 alias3.c:17:3: Undocumented modification of gu->a: gu->a = 5
73 alias3.c: (in function f)
74 alias3.c:38:3: Possible undocumented modification of ia[3] through alias *ip:
76 alias3.c:42:3: Possible undocumented modification of ia[] through alias *ip:
78 alias3.c:44:3: Undocumented modification of ia[6] possible from call to model:
80 alias3.c:46:3: Undocumented modification of ia[6] possible from call to model
81 (through alias ip[6]): model(ip)
82 alias3.c:49:3: Undocumented modification of *(s1.b): *(s1.b) = 7
83 alias3.c:52:3: Undocumented modification of *(s1.b) possible from call to modst
84 (through alias *(sl.b)): modst(sl)
85 alias3.c:56:3: Undocumented modification of *(s1.b): *(s1.b) = 3
86 alias3.c:57:3: Possible undocumented modification of *(s1.b) through alias *ip:
88 alias3.c:58:3: Possible undocumented modification of *(s1.b) through alias
90 alias3.c:61:3: Undocumented modification of *u1 possible from call to modu
91 (through alias *ul): modu(ul)
92 alias3.c:62:3: Possible undocumented modification of u1->a through alias ul->a:
94 alias3.c:65:3: Possible undocumented modification of *(u1->s.b) through alias
97 Finished checking --- 14 code warnings, as expected
99 Finished checking --- no warnings
101 alias4.c: (in function f)
102 alias4.c:15:10: Function may return reference to parameter a through alias c: c
103 alias4.c:15:10: Function may return reference to parameter b through alias c: c
104 alias4.c: (in function h)
105 alias4.c:26:12: Function returns reference to global glob: &glob
106 alias4.c:28:12: Function returns reference to global globp: globp
107 alias4.c:30:12: Function returns reference to global globs: (globs.field)
108 alias4.c:32:12: Function returns reference to global globs: (&(globs.val))
110 Finished checking --- 6 code warnings, as expected
112 alias5.c: (in function incx1)
113 alias5.c:13:3: Possible undocumented modification of p->x through alias p2->x:
115 alias5.c: (in function incx2)
116 alias5.c:22:2: Fresh storage p2 not released before return
117 alias5.c:20:3: Fresh storage p2 allocated
118 alias5.c: (in function incx3)
119 alias5.c:27:3: Only storage p2->x (type int *) not released before assignment:
121 alias5.c:28:3: Possible undocumented modification of *(p->x) through alias
122 *(p2->x): *(p2->x) = 3
123 alias5.c:30:2: Storage p->x reachable from parameter is kept (should be only)
124 alias5.c:27:3: Storage p->x becomes kept
126 Finished checking --- 5 code warnings, as expected