./deagle --no-assertions --datarace --32 /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i


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


Deagle version 2.1 64-bit x86_64 linux
which contains:
CBMC version 5.67.0 (SVCOMP2023_221122-2-g2121ef1a2) 64-bit x86_64 linux
Parsing /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i
Converting
Type-checking 04-mutex_54-pt_rwlock_ww
Generating GOTO Program
Adding CPROVER library (x86_64)
file <builtin-library-pthread_rwlock_wrlock> line 7: 
reason for conflict at #this.__data: number of members is different (11/12)

struct __pthread_rwlock_arch_t {
  unsigned int __readers;
  unsigned int __writers;
  unsigned int __wrphase_futex;
  unsigned int __writers_futex;
  unsigned int __pad3;
  unsigned int __pad4;
  unsigned char __flags;
  unsigned char __shared;
  signed char __rwelision;
  unsigned char __pad2;
  signed int __cur_writer;
}
struct __pthread_rwlock_arch_t {
  unsigned int __readers;
  unsigned int __writers;
  unsigned int __wrphase_futex;
  unsigned int __writers_futex;
  unsigned int __pad3;
  unsigned int __pad4;
  signed int __cur_writer;
  signed int __shared;
  signed char __rwelision;
  unsigned char [3] __pad1;
  unsigned long int __pad2;
  unsigned int __flags;
}
warning: pointer parameter types differ between declaration and definition "pthread_rwlock_wrlock"
old definition in module 04-mutex_54-pt_rwlock_ww file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i line 577
signed int (pthread_rwlock_t *)
new definition in module <built-in-library> file <builtin-library-pthread_rwlock_wrlock> line 7
signed int (pthread_rwlock_t *lock)
file <builtin-library-pthread_rwlock_unlock> line 7: 
reason for conflict at #this.__data: number of members is different (11/12)

struct __pthread_rwlock_arch_t {
  unsigned int __readers;
  unsigned int __writers;
  unsigned int __wrphase_futex;
  unsigned int __writers_futex;
  unsigned int __pad3;
  unsigned int __pad4;
  unsigned char __flags;
  unsigned char __shared;
  signed char __rwelision;
  unsigned char __pad2;
  signed int __cur_writer;
}
struct __pthread_rwlock_arch_t {
  unsigned int __readers;
  unsigned int __writers;
  unsigned int __wrphase_futex;
  unsigned int __writers_futex;
  unsigned int __pad3;
  unsigned int __pad4;
  signed int __cur_writer;
  signed int __shared;
  signed char __rwelision;
  unsigned char [3] __pad1;
  unsigned long int __pad2;
  unsigned int __flags;
}
warning: pointer parameter types differ between declaration and definition "pthread_rwlock_unlock"
old definition in module 04-mutex_54-pt_rwlock_ww file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i line 584
signed int (pthread_rwlock_t *)
new definition in module <built-in-library> file <builtin-library-pthread_rwlock_unlock> line 7
signed int (pthread_rwlock_t *lock)
file <builtin-library-pthread_create> line 20: warning: pointer parameter types differ between declaration and definition "pthread_create"
old definition in module 04-mutex_54-pt_rwlock_ww file /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i line 399
signed int (pthread_t *, const pthread_attr_t *, void * (*)(void *), void *)
new definition in module <built-in-library> file <builtin-library-pthread_create> line 20
signed int (pthread_t *thread, const pthread_attr_t *attr, void * (*start_routine)(void *), void *arg)
Removal of function pointers and virtual functions
file <builtin-library-__spawned_thread> line 34 function __spawned_thread: replacing function pointer by 1 possible targets
Generic Property Instrumentation
Running with 8 object bits, 24 offset bits (default)
Starting Bounded Model Checking
[Warning][Deadcode] Function "__bswap_32" will never be called: 1LoC (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i:62:1)
[Warning][Deadcode] Function "__bswap_64" will never be called: 1LoC (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i:67:1)
[Warning][Deadcode] Function "__uint16_identity" will never be called: 1LoC (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i:72:1)
[Warning][Deadcode] Function "__uint32_identity" will never be called: 1LoC (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i:77:1)
[Warning][Deadcode] Function "__uint64_identity" will never be called: 1LoC (/mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i:82:1)

Summary for all memory locations:
	safe:           15
	vulnerable:      0
	unsafe:          0
	-------------------
	total:          15
Use SV-COMP unwinding strategy: 2
Deagle's solver is set!!!!!!
pointer handling for concurrency is unsound
Handling datarace, passing the problem to goblint first
getcwd: /mnt/goblint-svcomp/benchexec/tools-pldi/deagle
/mnt/goblint-svcomp/benchexec/tools-pldi/deagle/goblint/goblint /mnt/goblint-svcomp/benchexec/sv-benchmarks/c/goblint-regression/04-mutex_54-pt_rwlock_ww.i | tee goblint/goblint_output: 0
Lines where datarace may occur: 
The number of races before goblint filter: 24
The number of races after goblint filter: 0
Race categories: 0
Runtime Symex: 0.0977097s
Unsupported library function!
