1  /* Copyright (C) 2016-2023 Free Software Foundation, Inc.
       2     This file is part of the GNU C Library.
       3  
       4     The GNU C Library is free software; you can redistribute it and/or
       5     modify it under the terms of the GNU Lesser General Public
       6     License as published by the Free Software Foundation; either
       7     version 2.1 of the License, or (at your option) any later version.
       8  
       9     The GNU C Library is distributed in the hope that it will be useful,
      10     but WITHOUT ANY WARRANTY; without even the implied warranty of
      11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
      12     Lesser General Public License for more details.
      13  
      14     You should have received a copy of the GNU Lesser General Public
      15     License along with the GNU C Library; if not, see
      16     <https://www.gnu.org/licenses/>.  */
      17  
      18  #include <sys/quota.h>
      19  
      20  #include <stdbool.h>
      21  #include <stdio.h>
      22  
      23  static bool errors;
      24  
      25  void
      26  check_size (const char *name1, size_t size1,
      27              const char *name2, size_t size2)
      28  {
      29    const char *prefix;
      30    const char *op;
      31    if (size1 != size2)
      32      {
      33        prefix = "error";
      34        op = "!=";
      35        errors = true;
      36      }
      37    else
      38      {
      39        prefix = "info";
      40        op = "==";
      41      }
      42    printf ("%s: sizeof (%s) [%zu] %s sizeof (%s) [%zu]\n",
      43            prefix, name1, size1, op, name2, size2);
      44  }
      45  
      46  #define CHECK_SIZE(type1, type2) \
      47    check_size (#type1, sizeof (type1), #type2, sizeof (type2))
      48  
      49  int
      50  do_test (void)
      51  {
      52    CHECK_SIZE (struct if_dqblk, struct dqblk);
      53    CHECK_SIZE (struct if_dqinfo, struct dqinfo);
      54    return errors;
      55  }
      56  
      57  #define TEST_FUNCTION do_test ()
      58  #include "../test-skeleton.c"