(root)/
gcc-13.2.0/
gcc/
testsuite/
gcc.dg/
20040305-2.c
       1  /* PR target/14262 */
       2  /* { dg-do run } */
       3  
       4  extern void abort (void);
       5  
       6  typedef char   ACS;
       7  typedef char   LSM;
       8  typedef char   PANEL;
       9  typedef char   DRIVE;
      10  typedef struct {
      11      ACS             acs;
      12      LSM             lsm;
      13  } LSMID;
      14  typedef struct {
      15      LSMID           lsm_id;
      16      PANEL           panel;
      17  } PANELID;
      18  typedef struct {
      19      PANELID         panel_id;
      20      DRIVE           drive;
      21  } DRIVEID;
      22  
      23  void sub (DRIVEID driveid)
      24  {
      25    if (driveid.drive != 1)
      26      abort ();
      27    if (driveid.panel_id.panel != 2)
      28      abort ();
      29    if (driveid.panel_id.lsm_id.lsm != 3)
      30      abort ();
      31    if (driveid.panel_id.lsm_id.acs != 4)
      32      abort ();
      33  }
      34  
      35  int main(void)
      36  {
      37    DRIVEID driveid;
      38  
      39    driveid.drive = 1;
      40    driveid.panel_id.panel = 2;
      41    driveid.panel_id.lsm_id.lsm = 3;
      42    driveid.panel_id.lsm_id.acs = 4;
      43  
      44    sub(driveid);
      45  
      46    return 0;
      47  }
      48  
      49