]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
testsuite, analyzer: add test case [PR108171]
authorDavid Malcolm <dmalcolm@redhat.com>
Thu, 3 Aug 2023 14:47:22 +0000 (10:47 -0400)
committerDavid Malcolm <dmalcolm@redhat.com>
Thu, 3 Aug 2023 14:47:22 +0000 (10:47 -0400)
The ICE in PR analyzer/108171 appears to be a dup of the recently fixed
PR analyzer/110882 and is likewise fixed by it; adding this test case.

gcc/testsuite/ChangeLog:
PR analyzer/108171
* gcc.dg/analyzer/pr108171.c: New test.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
gcc/testsuite/gcc.dg/analyzer/pr108171.c [new file with mode: 0644]

diff --git a/gcc/testsuite/gcc.dg/analyzer/pr108171.c b/gcc/testsuite/gcc.dg/analyzer/pr108171.c
new file mode 100644 (file)
index 0000000..5f7b9fd
--- /dev/null
@@ -0,0 +1,31 @@
+struct nl_context {
+  void *cmd_private;
+};
+
+struct sfeatures_context {
+  int a;
+  int req_mask[0];
+};
+
+int set_sf_req_mask_idx;
+
+extern void fill_legacy_flag();
+
+void
+fill_sfeatures_bitmap(struct nl_context *nlctx) {
+  while (nlctx) {
+    fill_legacy_flag();
+    struct nl_context __trans_tmp_1 = *nlctx;
+    struct sfeatures_context *sfctx = __trans_tmp_1.cmd_private;
+    sfctx->req_mask[set_sf_req_mask_idx] |= 1;
+  }
+}
+
+void
+nl_sfeatures() {
+  struct nl_context nlctx;
+  struct sfeatures_context *sfctx;
+  nlctx.cmd_private = &sfctx;
+  sfctx = 0;
+  fill_sfeatures_bitmap(&nlctx);
+}