Donát Nagy
257754011c
[NFC][analyzer] OOB test consolidation II: constraint checking ( #126748 )
...
This commit heavily refactors `out-of-bounds-constraint-check.c`:
1. The complex combinations of several `clang_analyzer_eval` calls were
replaced by `clang_analyzer_value`, which can directly query the range
of a symbol.
2. Testcases were renamed to a (hopefully) more consistent scheme.
3. The use of `size_t` as an argument type was replaced by `unsigned
long long`, which is usually a no-op, but seems to be a better choice if
I look for `64u` in the output of `clang_analyzer_value`.
4. The single "dynamic extent" case was generalized into a full set of
tests that use `malloc`.
5. Half of the testcases (the ones that don't use `malloc`) were changed
to use an `int[5]` array instead of a string literal. After this change
the tests in this file cover every functionality that was tested by the
testcases `test_assume_after_access{,2}` in the file `out-of-bounds.c`
so I was able to delete those two testcases (and therefore consolidate
the validation of these constraints within a single test file).
This is the second commit in a series that reorganizes the tests of
`security.ArrayBound` to system that's easier to understand and
maintain. (Note that this file wasn't significantly modified by the
recent commit 6e17ed9b04 which renamed
`alpha.security.ArrayBoundV2` to `security.ArrayBound`; but I still felt
that this cleanup may be useful.)
2025-02-12 16:18:27 +01:00
..
2024-05-23 12:56:16 +02:00
2025-02-11 11:07:52 -08:00
2024-01-31 13:55:31 -08:00
2024-09-26 14:00:13 +02:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2025-01-28 09:10:02 +01:00
2024-05-08 07:35:47 -07:00
2025-01-09 15:43:53 +01:00
2024-01-27 22:20:08 -08:00
2024-05-06 10:36:19 -07:00
2024-06-28 10:17:27 +02:00
2025-02-12 11:56:02 +01:00
2024-03-25 15:24:03 +01:00
2024-03-25 15:24:03 +01:00
2025-01-10 11:17:06 +01:00
2024-03-25 15:24:03 +01:00
2025-01-29 21:58:55 -03:00
2024-10-26 17:41:55 +02:00
2024-03-25 10:08:56 +00:00
2024-10-04 16:12:29 +03:00
2024-09-26 14:00:13 +02:00
2024-03-06 16:42:31 +01:00
2024-02-11 19:43:34 +01:00
2024-08-28 11:30:18 +02:00
2024-08-28 11:30:18 +02:00
2024-06-03 14:23:58 +02:00
2024-06-03 14:23:58 +02:00
2024-06-03 14:23:58 +02:00
2024-09-26 14:00:13 +02:00
2024-01-15 12:12:09 -06:00
2024-07-04 13:46:22 +02:00
2024-01-24 11:22:43 +01:00
2024-11-27 09:41:12 +01:00
2025-01-30 16:21:46 -08:00
2024-10-03 12:27:25 +02:00
2024-10-05 17:21:31 +02:00
2024-08-18 13:50:42 +04:00
2024-07-23 08:39:11 +02:00
2024-07-25 13:43:47 +02:00
2024-09-30 09:16:27 +02:00
2024-05-30 07:56:58 -05:00
2024-08-23 15:38:21 -04:00
2024-08-23 15:38:21 -04:00
2024-11-29 08:23:08 +01:00
2025-01-18 19:16:33 +01:00
2025-02-11 12:54:30 +00:00
2024-09-19 10:04:47 +02:00
2024-09-06 15:55:16 +02:00
2024-11-29 09:19:33 +01:00
2024-07-25 15:56:17 +02:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2024-09-25 10:43:02 -04:00
2024-09-25 10:43:02 -04:00
2025-01-28 09:10:02 +01:00
2024-03-06 17:01:30 +01:00
2024-03-22 12:04:44 +01:00
2024-09-26 14:00:13 +02:00
2024-04-16 10:41:26 +02:00
2024-11-27 14:27:31 +01:00
2024-06-06 11:46:33 +02:00
2024-05-22 12:37:27 +08:00
2024-09-26 14:00:13 +02:00
2024-10-01 11:33:06 +02:00
2025-02-07 08:01:39 +01:00
2025-01-06 12:45:31 +01:00
2025-01-03 11:17:16 +01:00
2024-06-17 23:37:34 +08:00
2024-06-17 23:37:34 +08:00
2024-03-19 07:55:49 -07:00
2024-08-02 17:04:57 +02:00
2024-11-29 09:19:33 +01:00
2025-01-06 12:45:31 +01:00
2025-01-06 12:45:31 +01:00
2024-09-26 14:00:13 +02:00
2024-07-24 13:15:08 +02:00
2024-07-24 13:15:08 +02:00
2025-02-06 16:09:14 +01:00
2025-02-06 16:09:14 +01:00
2025-02-05 17:22:18 +01:00
2024-07-24 13:15:08 +02:00
2024-03-25 12:43:51 +01:00
2024-03-22 11:50:34 +01:00
2024-05-13 13:43:35 +02:00
2024-09-26 14:00:13 +02:00
2024-09-26 14:00:13 +02:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2024-08-28 08:36:59 +02:00
2025-02-06 17:45:42 +01:00
2024-10-18 13:51:20 +02:00
2024-11-29 20:36:24 +01:00
2025-01-18 19:16:33 +01:00
2024-04-17 08:02:49 +02:00
2024-04-12 18:15:33 +02:00
2024-07-23 08:39:11 +02:00
2024-11-29 09:19:33 +01:00
2024-07-24 13:15:08 +02:00
2025-02-03 15:52:04 +01:00
2025-02-12 16:07:49 +01:00
2025-02-12 11:56:02 +01:00
2024-08-28 08:36:59 +02:00
2025-01-02 15:51:03 +01:00
2024-09-26 15:45:08 +03:00
2024-07-24 13:15:08 +02:00
2024-09-16 06:48:07 +02:00
2024-09-16 19:44:13 +03:00
2024-07-24 13:15:08 +02:00
2025-01-18 19:16:33 +01:00
2024-09-26 14:00:13 +02:00
2024-07-24 13:15:08 +02:00
2024-07-24 13:15:08 +02:00
2024-05-15 10:53:54 +02:00
2025-02-06 17:45:42 +01:00
2024-03-06 16:32:14 +01:00
2024-07-24 13:15:08 +02:00
2024-09-03 10:31:36 +02:00
2024-05-06 10:36:19 -07:00
2024-09-16 19:44:13 +03:00
2025-02-07 08:01:39 +01:00
2024-09-16 06:48:07 +02:00
2025-01-18 19:16:33 +01:00
2025-01-18 19:16:33 +01:00
2025-01-30 12:48:09 +01:00
2024-09-09 03:47:39 -05:00
2024-08-27 14:41:52 +02:00
2024-08-27 14:41:52 +02:00
2024-09-06 15:55:16 +02:00
2024-02-13 14:57:55 -08:00
2024-02-13 14:57:55 -08:00
2024-05-06 10:36:19 -07:00
2025-02-12 16:18:27 +01:00
2025-02-11 14:25:42 +01:00
2025-02-06 17:45:42 +01:00
2025-02-06 17:45:42 +01:00
2025-02-12 16:18:27 +01:00
2025-02-06 17:45:42 +01:00
2025-02-06 17:45:42 +01:00
2024-10-31 17:02:28 +01:00
2024-07-24 13:15:08 +02:00
2025-01-18 19:16:33 +01:00
2025-01-18 19:16:33 +01:00
2024-09-30 09:16:27 +02:00
2024-10-11 11:58:14 +02:00
2024-12-28 11:09:29 +01:00
2024-10-03 09:17:51 +02:00
2025-01-06 12:45:31 +01:00
2024-05-06 10:36:19 -07:00
2024-06-04 10:02:38 +02:00
2024-10-09 11:39:56 +02:00
2024-09-26 14:00:13 +02:00
2024-12-04 19:33:25 +01:00
2024-05-06 10:36:19 -07:00
2024-05-07 13:06:11 +02:00
2025-02-06 17:45:42 +01:00
2025-01-18 19:16:33 +01:00
2024-05-22 12:11:18 +02:00
2024-05-22 12:11:18 +02:00
2024-07-29 08:12:22 +02:00
2024-11-29 08:23:08 +01:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2024-10-23 10:46:36 +02:00
2025-02-11 12:54:30 +00:00
2024-08-28 08:36:59 +02:00
2025-02-11 12:54:30 +00:00
2025-02-11 12:54:30 +00:00
2025-01-10 11:17:06 +01:00
2024-04-30 09:01:45 +02:00
2024-02-21 09:18:01 +01:00
2024-02-08 11:09:57 +01:00
2024-04-30 09:01:45 +02:00
2024-03-04 15:28:20 +01:00
2024-11-29 09:19:33 +01:00
2024-11-29 09:19:33 +01:00
2024-11-14 16:28:37 +01:00
2024-04-30 09:01:45 +02:00
2024-04-30 09:01:45 +02:00
2024-09-18 12:22:02 +02:00
2024-04-30 09:01:45 +02:00
2024-04-30 09:01:45 +02:00
2024-04-30 09:01:45 +02:00
2024-09-18 12:22:02 +02:00
2024-06-24 16:34:36 +02:00
2024-04-30 09:01:45 +02:00
2024-04-30 09:01:45 +02:00
2024-09-18 12:22:02 +02:00
2024-04-30 09:01:45 +02:00
2024-11-27 09:41:12 +01:00
2024-11-27 09:41:12 +01:00
2024-11-27 09:41:12 +01:00
2025-01-18 19:16:33 +01:00
2024-02-13 14:57:55 -08:00
2024-02-13 14:57:55 -08:00
2024-02-13 14:57:55 -08:00
2025-01-06 12:45:31 +01:00
2025-01-06 12:45:31 +01:00
2025-01-06 12:45:31 +01:00
2024-09-26 14:00:13 +02:00
2024-09-26 14:00:13 +02:00
2025-02-06 17:45:42 +01:00
2024-09-26 14:00:13 +02:00
2025-02-06 17:45:42 +01:00
2025-02-06 17:45:42 +01:00
2024-10-03 12:27:25 +02:00
2024-09-26 14:00:13 +02:00
2024-09-26 14:00:13 +02:00
2024-11-29 09:19:33 +01:00
2024-01-30 13:03:55 +01:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2024-05-06 10:36:19 -07:00
2025-01-06 12:45:31 +01:00
2024-05-06 10:36:19 -07:00
2024-01-23 11:13:55 -08:00
2024-02-20 10:25:01 +01:00
2024-02-20 10:25:01 +01:00
2024-05-14 11:57:10 +02:00
2024-02-13 14:57:55 -08:00
2024-07-23 08:39:11 +02:00
2024-11-27 14:27:31 +01:00
2024-07-24 13:15:08 +02:00
2025-01-06 18:08:12 +01:00
2024-09-19 09:57:25 -05:00