diff mbox series

[committed] analyzer: add more uninit test coverage

Message ID 20220615214926.1704230-1-dmalcolm@redhat.com
State New
Headers show
Series [committed] analyzer: add more uninit test coverage | expand

Commit Message

David Malcolm June 15, 2022, 9:49 p.m. UTC
Tested on x86_64-pc-linux-gnu.

Pushed to trunk as r13-1116-g44681d45473883.

gcc/testsuite/ChangeLog:
	* gcc.dg/analyzer/uninit-1.c: Add test coverage of attempts
	to jump through an uninitialized function pointer, and of attempts
	to pass an uninitialized value to a function call.

Signed-off-by: David Malcolm <dmalcolm@redhat.com>
---
 gcc/testsuite/gcc.dg/analyzer/uninit-1.c | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)
diff mbox series

Patch

diff --git a/gcc/testsuite/gcc.dg/analyzer/uninit-1.c b/gcc/testsuite/gcc.dg/analyzer/uninit-1.c
index 9a6576e1b0a..3d1021658bc 100644
--- a/gcc/testsuite/gcc.dg/analyzer/uninit-1.c
+++ b/gcc/testsuite/gcc.dg/analyzer/uninit-1.c
@@ -127,3 +127,22 @@  size_t test_builtin_strlen (void)
   const char *ptr; /* { dg-message "region created on stack here" } */
   return __builtin_strlen (ptr); /* { dg-warning "use of uninitialized value 'ptr'" } */
 }
+
+void test_calling_uninit_fn_ptr_1 (void)
+{
+  void (*fn_ptr) (void); /* { dg-message "region created on stack here" } */
+  fn_ptr (); /* { dg-warning "use of uninitialized value 'fn_ptr'" } */
+}
+
+int test_calling_uninit_fn_ptr_2 (void)
+{
+  int (*fn_ptr) (void); /* { dg-message "region created on stack here" } */
+  return fn_ptr (); /* { dg-warning "use of uninitialized value 'fn_ptr'" } */
+}
+
+extern void called_by_uninit_arg (int);
+void test_passing_uninit_arg (void)
+{
+  int i; /* { dg-message "region created on stack here" } */
+  called_by_uninit_arg (i); /* { dg-warning "use of uninitialized value 'i'" } */
+}