---Thread-Announcement------------------------------------------

Thread #x was created
   ...
   by 0x........: pthread_create@* (hg_intercepts.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:92)
   by 0x........: main (pth_barrier.c:122)

---Thread-Announcement------------------------------------------

Thread #x was created
   ...
   by 0x........: pthread_create@* (hg_intercepts.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:92)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 0 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 1 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 2 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 3 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 4 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 5 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 6 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 7 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 8 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 9 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 10 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 11 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 12 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 13 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 14 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 15 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 16 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 17 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 18 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 19 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 20 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 21 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 22 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 23 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 24 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 25 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 26 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 27 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 28 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 29 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 30 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

----------------------------------------------------------------

Possible data race during write of size 1 at 0x........ by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...

This conflicts with a previous write of size 1 by thread #x
Locks held: none
   at 0x........: threadfunc (pth_barrier.c:60)
   by 0x........: mythread_wrapper (hg_intercepts.c:...)
   ...
 Address 0x........ is 31 bytes inside a block of size 32 alloc'd
   at 0x........: malloc (vg_replace_malloc.c:...)
   by 0x........: barriers_and_races (pth_barrier.c:76)
   by 0x........: main (pth_barrier.c:122)

