Daniel Marjamäki
|
755e2d261c
|
Fixed #9402 (ExprEngine: && and || in condition)
|
2019-12-24 15:52:02 +01:00 |
Daniel Marjamäki
|
747a01f74d
|
Verification; Check function argument values
|
2019-12-23 22:10:43 +01:00 |
Daniel Marjamäki
|
eb551728a5
|
Verification; Avoid FP for known values
|
2019-12-22 21:24:39 +01:00 |
Daniel Marjamäki
|
93f10da981
|
Verification; Detect errors after bailout
|
2019-12-22 21:03:43 +01:00 |
Daniel Marjamäki
|
c3c9559bee
|
Fix Cppcheck warning
|
2019-10-27 18:22:47 +01:00 |
Daniel Marjamäki
|
c899d7becf
|
--verify: Fix false negative in itc
|
2019-10-27 16:47:56 +01:00 |
Daniel Marjamäki
|
83a7987f6f
|
--verify: Fix false negative in itc test suite
|
2019-10-27 16:23:37 +01:00 |
Daniel Marjamäki
|
c56a45840a
|
Verify: Fix false negative in itc
|
2019-10-27 15:35:04 +01:00 |
Daniel Marjamäki
|
37bb19f02c
|
Verify: Fix a false negative in the itc test suite
|
2019-10-25 21:46:02 +02:00 |
Daniel Marjamäki
|
8cfc833381
|
ExprEngine: Better handling of container arguments
|
2019-10-23 22:04:48 +02:00 |
Daniel Marjamäki
|
052c02f8ee
|
ExprEngine: Refactoring
|
2019-10-23 18:42:40 +02:00 |
Daniel Marjamäki
|
bcfc0d32fe
|
ExprEngine: ::
|
2019-10-23 18:23:25 +02:00 |
Daniel Marjamäki
|
7b50b76b89
|
ExprEngine: container value
|
2019-10-23 18:06:10 +02:00 |
Daniel Marjamäki
|
4d218d1b47
|
ExprEngine: Clarify output
|
2019-10-23 16:40:49 +02:00 |
Daniel Marjamäki
|
3699227b12
|
ExprEngine: Throw exception if there is unhandled expression in assignment LHS
|
2019-10-22 18:39:59 +02:00 |
Daniel Marjamäki
|
d98ac017f7
|
ExprEngine: Improved handling of struct member assignments in loops
|
2019-10-14 22:04:12 +02:00 |
Daniel Marjamäki
|
8c5c070d6a
|
ExprEngine: Improved handling of struct member assignments in loop
|
2019-10-14 19:41:32 +02:00 |
Daniel Marjamäki
|
ee280a94fb
|
ExprEngine: New handling of << and >>
|
2019-10-14 17:20:35 +02:00 |
Daniel Marjamäki
|
4e49b14721
|
ExprEngine: << and >> are not handled well, throw exception for now.
|
2019-10-14 11:56:39 +02:00 |
Daniel Marjamäki
|
c7a56529bb
|
ExprEngine: Clarify verificationIntegerOverflow message
|
2019-10-14 11:54:43 +02:00 |
Daniel Marjamäki
|
530d4d2427
|
ExprEngine: Throw exception if we do not handle array well yet
|
2019-10-10 20:29:43 +02:00 |
Daniel Marjamäki
|
c2b514dc45
|
ExprEngine: Throw exception if assignment in loop is not handled
|
2019-10-10 11:12:36 +02:00 |
Daniel Marjamäki
|
5b9bc4918e
|
ExprEngine: Better error output when solver fails
|
2019-10-09 22:16:30 +02:00 |
Daniel Marjamäki
|
63bd182e83
|
ExprEngine: Adapt to z3 handling of bool/int expressions
|
2019-10-09 20:18:17 +02:00 |
Daniel Marjamäki
|
273a1a7402
|
ExprEngine: Fix FP for 'int' overflows
|
2019-10-09 11:24:57 +02:00 |
Daniel Marjamäki
|
ab6354754f
|
ExprEngine: Catch z3::exception and print message
|
2019-10-09 09:42:18 +02:00 |
Daniel Marjamäki
|
b27fe83da4
|
ExprEngine: Handle << and >>
|
2019-10-08 21:38:10 +02:00 |
Daniel Marjamäki
|
3e50150dbf
|
ExprEngine: Fix the checking for integer overflows
|
2019-10-08 20:13:25 +02:00 |
Daniel Marjamäki
|
21774cbdc4
|
ExprEngine: Handle while/for loops
|
2019-10-07 17:45:06 +02:00 |
Daniel Marjamäki
|
d82b1b29ce
|
ExprEngine: Initial handling of switch
|
2019-10-06 19:58:51 +02:00 |
Daniel Marjamäki
|
05aae9569b
|
ExprEngine: Execute false execution path even if there is no else, upon Z3 exception assume that value is in range (safe option)
|
2019-10-06 18:26:40 +02:00 |
Daniel Marjamäki
|
6c0c9ba6d3
|
ExprEngine: Handle 'break' and 'while (0);'
|
2019-10-06 17:43:30 +02:00 |
Daniel Marjamäki
|
dcf8a7213f
|
ExprEngine: ExprData::getConstraintExpr
|
2019-10-06 14:47:50 +02:00 |
Daniel Marjamäki
|
4e525e52ec
|
ExprEngine: Avoid endless recursion for struct members that have struct type
|
2019-10-05 18:29:41 +02:00 |
Daniel Marjamäki
|
e686699294
|
ExprEngine: Fix ExprEngin::IntRange::isIntValueInRange
|
2019-10-05 16:33:40 +02:00 |
Daniel Marjamäki
|
fcccd5f42e
|
ExprEngine: Small tweaks
|
2019-10-04 17:58:18 +02:00 |
Daniel Marjamäki
|
f80d387374
|
ExprEngine: Arrays if-then-else
|
2019-10-03 20:16:06 +02:00 |
Daniel Marjamäki
|
555890fdfa
|
ExprEngine: Removed NullPointerDereference checker for now.
|
2019-10-03 19:24:14 +02:00 |
Daniel Marjamäki
|
b79283306f
|
ExprEngine: Rename Data::conditions => Data::constraints
|
2019-10-03 08:48:05 +02:00 |
Daniel Marjamäki
|
d916379f9f
|
ExprEngine: Better handling of if/else
|
2019-10-02 21:47:00 +02:00 |
Daniel Marjamäki
|
7ab22c7176
|
ExprEngine: Use smt solver Z3
|
2019-10-02 17:59:04 +02:00 |
Daniel Marjamäki
|
1ccc303602
|
ExprEngine: Simplify array value if possible, ensure each array data has a unique name
|
2019-09-29 21:20:57 +02:00 |
Daniel Marjamäki
|
03ff32993e
|
Fixed Cppcheck warning
|
2019-09-29 17:32:26 +02:00 |
Daniel Marjamäki
|
1979b64170
|
ExprEngine: Bailout when for|while|switch is seen
|
2019-09-29 17:28:12 +02:00 |
Daniel Marjamäki
|
40c3e68e07
|
ExprEngine: Add --debug-verify, fixed handling of global arrays
|
2019-09-29 15:00:54 +02:00 |
Daniel Marjamäki
|
60e1cf8b8d
|
ExprEngine: Fix NULL pointer dereference tests
|
2019-09-29 08:26:09 +02:00 |
Daniel Marjamäki
|
3f587bef65
|
ExprEngine: Add some CWE476 (Null pointer dereference) checks
|
2019-09-28 19:28:12 +02:00 |
Daniel Marjamäki
|
1acd78a038
|
ExprEngine: Translate uninitialized values to value ranges
|
2019-09-28 16:16:36 +02:00 |
Daniel Marjamäki
|
2e5d663ae9
|
ExprEngine: Handle void* -> int* casts better
|
2019-09-28 15:40:00 +02:00 |
Daniel Marjamäki
|
f6c0550c41
|
ExprEngine: Do not bailout if function type is not known if the result is not used anyway
|
2019-09-28 11:55:06 +02:00 |