1 /* PR c/11428.  */
2 
3 /* fold_single_bit_test() failed to return a tree of the type that the
4    outer expression was looking for.  Specifically, it returned a tree
5    whose type corresponded to QImode for !p->m, but the desired result
6    type was int, which corresponded to SImode.  emit_move_insn() later
7    tried to copy a reg:QI to reg:SI, causing an ICE.  */
8 
9 struct s {
10   int m : 1;
11 };
12 
13 int
foo(struct s * p)14 foo (struct s *p)
15 {
16   return !p->m;
17 }
18