brintos

brintos / llvm-project-archived public Read only

0
0
Text · 782 B · cd5b5cd Raw
20 lines · cpp
1// RUN: %clang_cc1 -verify %s2 3struct A {4  enum E : unsigned {};5  enum E2 : int {};6  [[clang::preferred_type(E)]] unsigned b : 2;7  [[clang::preferred_type(E)]] int b2 : 2;8  [[clang::preferred_type(E2)]] const unsigned b3 : 2;9  [[clang::preferred_type(bool)]] unsigned b4 : 1;10  [[clang::preferred_type(bool)]] unsigned b5 : 2;11  [[clang::preferred_type()]] unsigned b6 : 2;12  // expected-error@-1 {{'clang::preferred_type' attribute takes one argument}}13  [[clang::preferred_type]] unsigned b7 : 2;14  // expected-error@-1 {{'clang::preferred_type' attribute takes one argument}}15  [[clang::preferred_type(E, int)]] unsigned b8 : 2;16  // expected-error@-1 {{expected ')'}}17  // expected-error@-2 {{expected ','}}18  // expected-warning@-3 {{unknown attribute 'int' ignored}}19};20