summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/conversion/bitfield10.C
blob: f75504e0d9931a4d304f626d712b59403e5b86dc (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// PR c++/38007
// We need to use the conversion function to the declared type of a bitfield,
// not the lowered bitfield type.
// { dg-do link }

struct A
{
  operator unsigned int() { return 42; }
  operator unsigned char();
};

struct B
{
  unsigned int b : 8;
};

int
main ()
{
  A u;
  unsigned int v = u;
  B w;
  w.b = u;
}