Commit Graph

1683 Commits

Author SHA1 Message Date
Geoffrey White
208cd4c888 C++: Fix assign in the test stl.h. 2020-08-27 16:52:22 +01:00
Geoffrey White
927a4faa58 C++: Remove the non-reference case that we shouldn't need. 2020-08-27 15:42:40 +01:00
Geoffrey White
865d91de80 C++: Fix getAValueTypeParameterIndex(). 2020-08-27 15:08:58 +01:00
Geoffrey White
816b8abd7c C++: Add a test case using a const int *. 2020-08-27 15:05:23 +01:00
Geoffrey White
a5a3078b58 C++: Add a test case using a typedef int. 2020-08-27 12:11:56 +01:00
Geoffrey White
6f62803e1f C++: Taint tests for array and reference assignments. 2020-08-27 11:26:25 +01:00
Geoffrey White
111da4c352 C++: Add a model of std::vector::assign. 2020-08-27 10:22:31 +01:00
Geoffrey White
fbac4ce44f C++: Split StdStringCStr and allow reverse flow on data. 2020-08-27 10:11:03 +01:00
Geoffrey White
fbff44ea45 C++: Add reverse taint as well. 2020-08-27 10:09:51 +01:00
Geoffrey White
6ae96baaf6 C++: Model std::vector::data. 2020-08-27 10:08:58 +01:00
Geoffrey White
2235c19593 C++: Add test cases for 'assign' and extra cases for 'data'. 2020-08-27 10:08:42 +01:00
Mathias Vorreiter Pedersen
e4807c0181 C++: Accept test changes 2020-08-26 15:51:09 +02:00
Mathias Vorreiter Pedersen
2a8ee90828 C++: Demonstrate lack of flow when taking the address of a field and loading it afterwards 2020-08-26 15:50:57 +02:00
Jonas Jensen
f60abd8cf9 Merge pull request #4125 from geoffw0/oparray2
C++: Model operator[]
2020-08-26 13:44:02 +02:00
Nick Rolfe
00316dca8b Merge pull request #4120 from github/igfoo/global_vars
C++: Give fewer types to global variables
2020-08-26 12:29:41 +01:00
Robert Marsh
34ddbc0dc2 C++: add std::string::end to model 2020-08-25 13:22:00 -07:00
Geoffrey White
23a792b8c6 C++: Add tests of nested vectors. 2020-08-25 12:13:32 +01:00
Robert Marsh
9aa3735165 C++: add tests for non-std:: iterators 2020-08-24 14:19:34 -07:00
Geoffrey White
adbfad21ef C++: Correct the localFlow test. 2020-08-24 18:05:30 +01:00
Geoffrey White
d3c8ffb995 C++: Clean up, comment, and restrict the new flow to the post-update node of the returned reference. 2020-08-24 14:07:06 +01:00
Geoffrey White
f2caa8a2b0 C++: Reverse taint through function models returning a reference. 2020-08-24 14:05:04 +01:00
Geoffrey White
f25ef26c37 C++: Permit taint flow to the left side of an assignment. 2020-08-24 14:01:49 +01:00
Geoffrey White
1da78ada14 C++: Model 'operator[]' and 'at' for std::string, std::vector and other containers. 2020-08-24 13:58:43 +01:00
Geoffrey White
f6770c5b88 C++: Add tests for std::string 'operator[]' and 'at()'. 2020-08-24 13:49:39 +01:00
Jonas Jensen
b2cd98a98f C++: Confirm correct behaviour on C++20
Making `constexpr` imply `const` was correct for C++11 and was a correct
emulation of a GCC bug on GCC < 5.0. This test confirms that the problem
isn't there in C++20.
2020-08-24 13:42:40 +02:00
Ian Lynagh
3ead154c9a C++: Add VariableDeclarationEntry test to library-tests/variables/global 2020-08-24 11:51:52 +01:00
Jonas Jensen
cd8e9a1ece C++: Demonstrate that constexpr implies const
This test shows that a member function declared `constexpr` also gets a
`const` specifier.
2020-08-24 11:39:41 +02:00
Ian Lynagh
fb62ce6d25 C++: Give fewer types to global variables
Follows change in the extractor.
2020-08-24 00:49:33 +01:00
Robert Marsh
bc0d21879d Merge branch 'main' into rdmarsh2/cpp/input-iterators-1
Resolve test conflict
2020-08-21 14:36:27 -07:00
Robert Marsh
4c82753e8d C++: remove constexpr in stl.h temporarily 2020-08-21 14:22:32 -07:00
Robert Marsh
94d4e05c25 C++: Fix iterator taint flow 2020-08-21 14:04:45 -07:00
Robert Marsh
656340f5c6 C++: more tests for string iterator flow 2020-08-21 13:48:36 -07:00
Geoffrey White
3d171f358a Merge remote-tracking branch 'upstream/main' into vecmethods 2020-08-20 13:29:28 +01:00
Geoffrey White
cda9fd250b C++: Model vector methods. 2020-08-20 10:30:01 +01:00
Geoffrey White
620126d38c C++: Add vector taint cases to test. 2020-08-20 10:27:25 +01:00
Geoffrey White
43c8efdf63 C++: Repair the range based for test. 2020-08-20 10:19:54 +01:00
Geoffrey White
8afa92d881 C++: Add more detail to the vector class in the test stl.h. 2020-08-20 09:39:35 +01:00
Jonas Jensen
b1c0e6f626 Merge remote-tracking branch 'upstream/main' into SimpleRangeAnalysis-mul-constant 2020-08-20 08:20:31 +02:00
Robert Marsh
20188b7bc2 C++: input iterator models 2020-08-19 12:11:36 -07:00
Robert Marsh
a457d54ad1 Merge pull request #4078 from jbj/SimpleRangeAnalysis-AssignMulExpr
C++: Range analysis for unsigned AssignMulExpr
2020-08-19 14:42:04 -04:00
Jonas Jensen
b14bc42756 Merge pull request #4090 from geoffw0/strmethods
C++: Model taint through many more methods in std::string
2020-08-19 16:40:46 +02:00
Jonas Jensen
21d16d13fc Merge remote-tracking branch 'upstream/main' into SimpleRangeAnalysis-AssignMulExpr 2020-08-19 14:50:40 +02:00
Jonas Jensen
83884c0dc5 Merge pull request #4089 from jbj/jbj/printFloat-precise
C++: Accept float.toString changes in tests
2020-08-19 12:58:27 +02:00
Nick Rolfe
d7849bc13f C++: fix compilation errors in ssa.cpp 2020-08-18 18:39:00 +01:00
Jonas Jensen
b65f82210f Merge remote-tracking branch 'upstream/main' into SimpleRangeAnalysis-mul-constant 2020-08-18 16:51:56 +02:00
Jonas Jensen
b316644ac2 C++: SimpleRangeAnalysis for *= by constant 2020-08-18 15:07:20 +02:00
Jonas Jensen
b6b72729f6 C++: SimpleRangeAnalysis for MulExpr by constant 2020-08-18 11:37:59 +02:00
Jonas Jensen
2e2f99cabf C++: Correctly classify the MulExpr rounding bugs 2020-08-18 10:39:57 +02:00
Geoffrey White
0234bca6ca C++: Fix a hole in StdStringAppend and clarify comments. 2020-08-17 17:55:44 +01:00
Robert Marsh
9decb47bf0 Merge pull request #4076 from jbj/SimpleRangeAnalysis-AssignOperation
C++: Fix SimpleRangeAnalysis for AssignOperation
2020-08-17 12:55:26 -04:00