Skip to content

Commit 885daa6

Browse files
author
Owen
committed
Create is_invalid_pointer_exprt class
1 parent feebc74 commit 885daa6

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/util/pointer_predicates.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ exprt null_pointer(const exprt &pointer)
141141

142142
exprt is_invalid_pointer(const exprt &pointer)
143143
{
144-
return unary_exprt(ID_is_invalid_pointer, pointer, bool_typet());
144+
return is_invalid_pointer_exprt{pointer};
145145
}
146146

147147
exprt dynamic_object_lower_bound(

src/util/pointer_predicates.h

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ Author: Daniel Kroening, kroening@kroening.com
1212
#ifndef CPROVER_UTIL_POINTER_PREDICATES_H
1313
#define CPROVER_UTIL_POINTER_PREDICATES_H
1414

15+
#include "std_expr.h"
1516
#define SYMEX_DYNAMIC_PREFIX "symex_dynamic::"
1617

1718
class exprt;
@@ -47,4 +48,13 @@ exprt object_upper_bound(
4748
const exprt &pointer,
4849
const exprt &access_size);
4950

51+
class is_invalid_pointer_exprt : public unary_predicate_exprt
52+
{
53+
public:
54+
explicit is_invalid_pointer_exprt(exprt pointer)
55+
: unary_predicate_exprt{ID_is_invalid_pointer, std::move(pointer)}
56+
{
57+
}
58+
};
59+
5060
#endif // CPROVER_UTIL_POINTER_PREDICATES_H

0 commit comments

Comments
 (0)