1 // RUN: %clangxx_msan -O0 %s -o %t && %run %t %p 2>&1
2 // RUN: %clangxx_msan -O0 -D_FILE_OFFSET_BITS=64 %s -o %t && %run %t %p 2>&1
3 // RUN: %clangxx_msan -O3 %s -o %t && %run %t %p 2>&1
8 #include <sanitizer/msan_interface.h>
10 int main(int argc
, char *argv
[]) {
12 assert(0 == __msan_test_shadow(uids
, 6 * sizeof(uid_t
)));
13 assert(0 == getresuid(&uids
[0], &uids
[2], &uids
[4]));
14 for (int i
= 0; i
< 3; i
++)
15 assert(sizeof(uid_t
) ==
16 __msan_test_shadow(uids
+ 2 * i
, 2 * sizeof(uid_t
)));
19 assert(0 == __msan_test_shadow(gids
, 6 * sizeof(gid_t
)));
20 assert(0 == getresgid(&gids
[0], &gids
[2], &gids
[4]));
21 for (int i
= 0; i
< 3; i
++)
22 assert(sizeof(gid_t
) ==
23 __msan_test_shadow(gids
+ 2 * i
, 2 * sizeof(gid_t
)));