aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorAndrew Santosa <santosa_1999@yahoo.com>2017-10-01 22:55:03 +0800
committerAndrea Mattavelli <andreamattavelli@users.noreply.github.com>2017-10-06 08:07:29 +0100
commitcc2a4e20bbfb7ca47a2f1629c67889ee150336da (patch)
treeab4b5aeb2997dddf4b2a407552bb5f79d8d4e9d5
parent48effc8ad27671bedcdfc916381c94c06c96d013 (diff)
downloadklee-cc2a4e20bbfb7ca47a2f1629c67889ee150336da.tar.gz
Removed the word 'unsigned' from integer overflow error messages
-rw-r--r--lib/Core/SpecialFunctionHandler.cpp14
-rw-r--r--test/Feature/ubsan_signed_overflow.c6
-rw-r--r--test/Feature/ubsan_unsigned_overflow.c6
3 files changed, 13 insertions, 13 deletions
diff --git a/lib/Core/SpecialFunctionHandler.cpp b/lib/Core/SpecialFunctionHandler.cpp
index 74d36f27..88e0d1a0 100644
--- a/lib/Core/SpecialFunctionHandler.cpp
+++ b/lib/Core/SpecialFunctionHandler.cpp
@@ -74,9 +74,8 @@ static SpecialFunctionHandler::HandlerInfo handlerInfo[] = {
addDNR("_exit", handleExit),
{ "exit", &SpecialFunctionHandler::handleExit, true, false, true },
addDNR("klee_abort", handleAbort),
- addDNR("klee_silent_exit", handleSilentExit),
+ addDNR("klee_silent_exit", handleSilentExit),
addDNR("klee_report_error", handleReportError),
-
add("calloc", handleCalloc, true),
add("free", handleFree, false),
add("klee_assume", handleAssume, false),
@@ -122,14 +121,15 @@ static SpecialFunctionHandler::HandlerInfo handlerInfo[] = {
// operator new(unsigned long)
add("_Znwm", handleNew, true),
- // clang -fsanitize=unsigned-integer-overflow
+ // Run clang with -fsanitize=signed-integer-overflow and/or
+ // -fsanitize=unsigned-integer-overflow
add("__ubsan_handle_add_overflow", handleAddOverflow, false),
add("__ubsan_handle_sub_overflow", handleSubOverflow, false),
add("__ubsan_handle_mul_overflow", handleMulOverflow, false),
add("__ubsan_handle_divrem_overflow", handleDivRemOverflow, false),
#undef addDNR
-#undef add
+#undef add
};
SpecialFunctionHandler::const_iterator SpecialFunctionHandler::begin() {
@@ -733,21 +733,21 @@ void SpecialFunctionHandler::handleMarkGlobal(ExecutionState &state,
void SpecialFunctionHandler::handleAddOverflow(ExecutionState &state,
KInstruction *target,
std::vector<ref<Expr> > &arguments) {
- executor.terminateStateOnError(state, "overflow on unsigned addition",
+ executor.terminateStateOnError(state, "overflow on addition",
Executor::Overflow);
}
void SpecialFunctionHandler::handleSubOverflow(ExecutionState &state,
KInstruction *target,
std::vector<ref<Expr> > &arguments) {
- executor.terminateStateOnError(state, "overflow on unsigned subtraction",
+ executor.terminateStateOnError(state, "overflow on subtraction",
Executor::Overflow);
}
void SpecialFunctionHandler::handleMulOverflow(ExecutionState &state,
KInstruction *target,
std::vector<ref<Expr> > &arguments) {
- executor.terminateStateOnError(state, "overflow on unsigned multiplication",
+ executor.terminateStateOnError(state, "overflow on multiplication",
Executor::Overflow);
}
diff --git a/test/Feature/ubsan_signed_overflow.c b/test/Feature/ubsan_signed_overflow.c
index 66288d2e..c89065eb 100644
--- a/test/Feature/ubsan_signed_overflow.c
+++ b/test/Feature/ubsan_signed_overflow.c
@@ -13,13 +13,13 @@ int main()
klee_make_symbolic(&x, sizeof(x), "x");
klee_make_symbolic(&y, sizeof(y), "y");
- // CHECK: ubsan_signed_overflow.c:17: overflow on unsigned addition
+ // CHECK: ubsan_signed_overflow.c:17: overflow on addition
result = x + y;
- // CHECK: ubsan_signed_overflow.c:20: overflow on unsigned subtraction
+ // CHECK: ubsan_signed_overflow.c:20: overflow on subtraction
result = x - y;
- // CHECK: ubsan_signed_overflow.c:23: overflow on unsigned multiplication
+ // CHECK: ubsan_signed_overflow.c:23: overflow on multiplication
result = x * y;
return 0;
diff --git a/test/Feature/ubsan_unsigned_overflow.c b/test/Feature/ubsan_unsigned_overflow.c
index 568b17ba..1300ffcc 100644
--- a/test/Feature/ubsan_unsigned_overflow.c
+++ b/test/Feature/ubsan_unsigned_overflow.c
@@ -13,13 +13,13 @@ int main()
klee_make_symbolic(&x, sizeof(x), "x");
klee_make_symbolic(&y, sizeof(y), "y");
- // CHECK: ubsan_unsigned_overflow.c:17: overflow on unsigned addition
+ // CHECK: ubsan_unsigned_overflow.c:17: overflow on addition
result = x + y;
- // CHECK: ubsan_unsigned_overflow.c:20: overflow on unsigned subtraction
+ // CHECK: ubsan_unsigned_overflow.c:20: overflow on subtraction
result = x - y;
- // CHECK: ubsan_unsigned_overflow.c:23: overflow on unsigned multiplication
+ // CHECK: ubsan_unsigned_overflow.c:23: overflow on multiplication
result = x * y;
return 0;