From b27ad0a2cd69e145bc8b7a662ef77c2dec9761e4 Mon Sep 17 00:00:00 2001 From: David Malcolm Date: Wed, 27 May 2020 13:59:23 -0400 Subject: [PATCH 185/315] FIXME: add symbolic-6.c --- gcc/testsuite/gcc.dg/analyzer/symbolic-6.c | 24 ++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 gcc/testsuite/gcc.dg/analyzer/symbolic-6.c diff --git a/gcc/testsuite/gcc.dg/analyzer/symbolic-6.c b/gcc/testsuite/gcc.dg/analyzer/symbolic-6.c new file mode 100644 index 00000000000..e81690399dc --- /dev/null +++ b/gcc/testsuite/gcc.dg/analyzer/symbolic-6.c @@ -0,0 +1,24 @@ +#include "analyzer-decls.h" + +int a[1024]; +int b[1024]; + +extern void escape (void *ptr); + +void test_1 (int *p) +{ + int c, d; + + *p = 42; + __analyzer_eval (*p == 42); /* { dg-warning "TRUE" } */ + + /* These writes shouldn't affect *p. */ + escape (&c); + c = 33; + d = 44; + __analyzer_eval (*p == 42); /* { dg-warning "TRUE" } */ + + /* This write could affect *p. */ + a[16] = 55; + __analyzer_eval (*p == 42); /* { dg-warning "UNKNOWN" } */ +} -- 2.26.2