(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
analyzer/
pr97568.c
       1  #include "analyzer-decls.h"
       2  
       3  #define NULL ((void *)0)
       4  
       5  extern int *const p1;
       6  
       7  int *const p2;
       8  
       9  int v3;
      10  extern int *const p3 = &v3; /* { dg-warning "'p3' initialized and declared 'extern'" } */
      11  
      12  int v4;
      13  int *const p4 = &v4;
      14  
      15  int main (void)
      16  {
      17    __analyzer_describe (0, p1); /* { dg-message "INIT_VAL\\(p1\\)" } */
      18    __analyzer_eval (p1 == NULL); /* { dg-message "UNKNOWN" } */
      19  
      20    __analyzer_eval (p2 == NULL); /* { dg-message "TRUE" } */
      21  
      22    __analyzer_describe (0, p3); /* { dg-message "&v3" } */
      23    __analyzer_eval (p3 == NULL); /* { dg-message "FALSE" } */
      24  
      25    __analyzer_describe (0, p4); /* { dg-message "&v4" } */
      26    __analyzer_eval (p4 == NULL); /* { dg-message "FALSE" } */
      27  
      28    return p1[0];
      29  }