modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/pr42164.c (about)

     1  typedef struct
     2  {
     3    unsigned long long pte;
     4  } pte_t;
     5  pte_t mk_swap_pte (unsigned long offset)
     6  {
     7    pte_t pte;
     8    pte.pte = (offset << 40);
     9    return pte;
    10  }
    11  int pte_file (pte_t pte)
    12  {
    13    return pte.pte & (1 << 4);
    14  }
    15  typedef struct
    16  {
    17    unsigned long val;
    18  } swp_entry_t;
    19  pte_t swp_entry_to_pte (swp_entry_t entry)
    20  {
    21    swp_entry_t arch_entry;
    22    arch_entry = (swp_entry_t){mk_swap_pte (swp_offset (entry)).pte};
    23    __BUG_ON ((unsigned long) pte_file ((pte_t) {arch_entry.val}));
    24    return (pte_t) {arch_entry.val};
    25  }