1c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn#include <stdlib.h>
2c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn
3c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njnint main(void)
4c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn{
5c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn   void* x = malloc(10);
6c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn
7eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   int   *x4;
8eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   short *x2;
9eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   char  *x1;
10eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   int    y4;
11eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   short  y2;
12eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   char   y1;
13eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge
14eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   x4 = x-4;
15eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   x2 = x-4;
16eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   x1 = x-1;
17c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn
18c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn   // Invalid reads and writes of sizes 4, 2, 1
19eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   y4 = *x4;
20eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   *x4 = y4;
21eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge
22eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   y2 = *x2;
23eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   *x2 = y2;
24eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge
25eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   y1 = *x1;
26eed7ecbbb4b6a224ca36485fc6e066e6d1584798fitzhardinge   *x1 = y1;
27c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn
28c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn   return 0;
29c2699f68c3c8596bc738cc45e76ae77e16ddcaf7njn}
30