view gcc/testsuite/g++.dg/expr/bitfield5.C @ 145:1830386684a0

gcc-9.2.0
author anatofuz
date Thu, 13 Feb 2020 11:34:05 +0900
parents 04ced10e8804
children
line wrap: on
line source

// PR c++/30274
// { dg-do run { target c++14_down } }
// { dg-do compile { target c++17 } }

struct S {
  bool x : 4;
};

S s;

int main() {
  s.x++; // { dg-warning "5:use of an operand of type .bool. in .operator\\+\\+. is deprecated" "" { target { ! c++17 } } }
  // { dg-error "forbidden" "" { target c++17 } .-1 }
  if (s.x != 1)
    return 1;
  ++s.x; // { dg-warning "7:use of an operand of type .bool. in .operator\\+\\+. is deprecated" "" { target { ! c++17 } } }
  // { dg-error "forbidden" "" { target c++17 } .-1 }
  if (s.x != 1)
    return 2;
}