@@ -1207,14 +1207,17 @@ __CPROVER_HIDE:;
12071207 if (__VERIFIER_nondet___CPROVER_bool ())
12081208 {
12091209 // in the failure case, make pointer null or pointing to a unique
1210- // dummy object of size 0.
1210+ // dummy deallocated object of size 0.
12111211 if (__VERIFIER_nondet___CPROVER_bool ())
12121212 {
12131213 * elem = (void * )0 ;
12141214 }
12151215 else
12161216 {
1217- * elem = __CPROVER_allocate (0 , 0 );
1217+ void * dummy = __CPROVER_allocate (0 , 0 );
1218+ __CPROVER_deallocated =
1219+ __VERIFIER_nondet___CPROVER_bool () ? dummy : __CPROVER_deallocated ;
1220+ * elem = dummy ;
12181221 }
12191222 return 0 ;
12201223 }
@@ -1274,14 +1277,17 @@ __CPROVER_HIDE:;
12741277 if (__VERIFIER_nondet___CPROVER_bool ())
12751278 {
12761279 // in the failure case, make pointer null or pointing to a unique
1277- // dummy object of size 0.
1280+ // dummy deallocated object of size 0.
12781281 if (__VERIFIER_nondet___CPROVER_bool ())
12791282 {
12801283 * elem = (void * )0 ;
12811284 }
12821285 else
12831286 {
1284- * elem = __CPROVER_allocate (0 , 0 );
1287+ void * dummy = __CPROVER_allocate (0 , 0 );
1288+ __CPROVER_deallocated =
1289+ __VERIFIER_nondet___CPROVER_bool () ? dummy : __CPROVER_deallocated ;
1290+ * elem = dummy ;
12851291 }
12861292 return 0 ;
12871293 }
@@ -1387,14 +1393,17 @@ __CPROVER_HIDE:;
13871393 if (__VERIFIER_nondet___CPROVER_bool ())
13881394 {
13891395 // in the failure case, make pointer null or pointing to a unique
1390- // dummy object of size 0.
1396+ // dummy deallocated object of size 0.
13911397 if (__VERIFIER_nondet___CPROVER_bool ())
13921398 {
13931399 * ptr = (void * )0 ;
13941400 }
13951401 else
13961402 {
1397- * ptr = __CPROVER_allocate (0 , 0 );
1403+ void * dummy = __CPROVER_allocate (0 , 0 );
1404+ __CPROVER_deallocated =
1405+ __VERIFIER_nondet___CPROVER_bool () ? dummy : __CPROVER_deallocated ;
1406+ * ptr = dummy ;
13981407 }
13991408 return 0 ;
14001409 }
0 commit comments