(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
analyzer/
pr104560-2.c
       1  struct ibv_device {
       2    /* [...snip...] */
       3    int placeholder;
       4  };
       5  
       6  struct verbs_device {
       7    struct ibv_device device; /* Must be first */
       8    /* [...snip...] */
       9    int placeholder;
      10  };
      11  
      12  struct mlx5_device {
      13    struct verbs_device verbs_dev;
      14    int placeholder;
      15  };
      16  
      17  static inline struct mlx5_device *to_mdev(struct ibv_device *ibdev)
      18  {
      19    return (struct mlx5_device *)ibdev;
      20  }
      21    
      22  static void mlx5_uninit_device(struct verbs_device *verbs_device)
      23  {
      24    struct mlx5_device *dev = to_mdev(&verbs_device->device);
      25    __builtin_free(dev); /* { dg-bogus "not on the heap" } */
      26  }