diff options
author | Andrew Santosa <santosa_1999@yahoo.com> | 2017-10-01 22:55:03 +0800 |
---|---|---|
committer | Andrea Mattavelli <andreamattavelli@users.noreply.github.com> | 2017-10-06 08:07:29 +0100 |
commit | cc2a4e20bbfb7ca47a2f1629c67889ee150336da (patch) | |
tree | ab4b5aeb2997dddf4b2a407552bb5f79d8d4e9d5 | |
parent | 48effc8ad27671bedcdfc916381c94c06c96d013 (diff) | |
download | klee-cc2a4e20bbfb7ca47a2f1629c67889ee150336da.tar.gz |
Removed the word 'unsigned' from integer overflow error messages
-rw-r--r-- | lib/Core/SpecialFunctionHandler.cpp | 14 | ||||
-rw-r--r-- | test/Feature/ubsan_signed_overflow.c | 6 | ||||
-rw-r--r-- | test/Feature/ubsan_unsigned_overflow.c | 6 |
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; |