brintos

brintos / llvm-project-archived public Read only

0
0
Text · 5.3 KiB · 75fb37e Raw
86 lines · cpp
1// RUN: %clang_cc1 -fcxx-exceptions -fexceptions -fsyntax-only -verify -std=c++11 %s2 3void foo(int i) {4 5  [[unknown_attribute]] ; // expected-warning {{unknown attribute 'unknown_attribute' ignored}}6  [[unknown_attribute]] { } // expected-warning {{unknown attribute 'unknown_attribute' ignored}}7  [[unknown_attribute]] if (0) { } // expected-warning {{unknown attribute 'unknown_attribute' ignored}}8  [[unknown_attribute]] for (;;); // expected-warning {{unknown attribute 'unknown_attribute' ignored}}9  [[unknown_attribute]] do { // expected-warning {{unknown attribute 'unknown_attribute' ignored}}10    [[unknown_attribute]] continue; // expected-warning {{unknown attribute 'unknown_attribute' ignored}}11  } while (0);12  [[unknown_attribute]] while (0); // expected-warning {{unknown attribute 'unknown_attribute' ignored}}13 14  [[unknown_attribute]] switch (i) { // expected-warning {{unknown attribute 'unknown_attribute' ignored}}15    [[unknown_attribute]] case 0: // expected-warning {{unknown attribute 'unknown_attribute' ignored}}16    [[unknown_attribute]] default: // expected-warning {{unknown attribute 'unknown_attribute' ignored}}17      [[unknown_attribute]] break; // expected-warning {{unknown attribute 'unknown_attribute' ignored}}18  }19 20  [[unknown_attribute]] goto here; // expected-warning {{unknown attribute 'unknown_attribute' ignored}}21  [[unknown_attribute]] here: // expected-warning {{unknown attribute 'unknown_attribute' ignored}}22 23  [[unknown_attribute]] try { // expected-warning {{unknown attribute 'unknown_attribute' ignored}}24  } catch (...) {25  }26 27  [[unknown_attribute]] return; // expected-warning {{unknown attribute 'unknown_attribute' ignored}}28	 29 30  alignas(8) ; // expected-error {{'alignas' attribute cannot be applied to a statement}}31  [[noreturn]] { } // expected-error {{'noreturn' attribute cannot be applied to a statement}}32  [[noreturn]] if (0) { } // expected-error {{'noreturn' attribute cannot be applied to a statement}}33  [[noreturn]] for (;;); // expected-error {{'noreturn' attribute cannot be applied to a statement}}34  [[noreturn]] do { // expected-error {{'noreturn' attribute cannot be applied to a statement}}35    [[unavailable]] continue; // expected-warning {{unknown attribute 'unavailable' ignored}}36  } while (0);37  [[unknown_attributqqq]] while (0); // expected-warning {{unknown attribute 'unknown_attributqqq' ignored}}38	// TODO: remove 'qqq' part and enjoy 'empty loop body' warning here (DiagnoseEmptyLoopBody)39 40  [[unknown_attribute]] while (0); // expected-warning {{unknown attribute 'unknown_attribute' ignored}}41 42  [[unused]] switch (i) { // expected-warning {{unknown attribute 'unused' ignored}}43    [[uuid]] case 0: // expected-warning {{unknown attribute 'uuid' ignored}}44    [[visibility]] default: // expected-warning {{unknown attribute 'visibility' ignored}}45      [[carries_dependency]] break; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}46  }47 48  [[fastcall]] goto there; // expected-warning {{unknown attribute 'fastcall' ignored}}49  [[noinline]] there: // expected-warning {{unknown attribute 'noinline' ignored}}50 51  [[lock_returned]] try { // expected-warning {{unknown attribute 'lock_returned' ignored}}52  } catch (...) {53  }54 55  [[weakref]] return; // expected-warning {{unknown attribute 'weakref' ignored}}56 57  [[carries_dependency]] ; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}58  [[carries_dependency]] { } // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}59  [[carries_dependency]] if (0) { } // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}60  [[carries_dependency]] for (;;); // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}61  [[carries_dependency]] do { // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}62    [[carries_dependency]] continue; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}} ignored}}63  } while (0);64  [[carries_dependency]] while (0); // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}65 66  [[carries_dependency]] switch (i) { // expected-error {{'carries_dependency' attribute cannot be applied to a statement}} ignored}}67    [[carries_dependency]] case 0: // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}68    [[carries_dependency]] default: // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}69      [[carries_dependency]] break; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}70  }71 72  [[carries_dependency]] goto here; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}73 74  [[carries_dependency]] try { // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}75  } catch (...) {76  }77 78  [[carries_dependency]] return; // expected-error {{'carries_dependency' attribute cannot be applied to a statement}}79 80  {81    [[ ]] // expected-error {{an attribute list cannot appear here}}82#pragma STDC FP_CONTRACT ON // expected-error {{can only appear at file scope or at the start of a compound statement}}83#pragma clang fp contract(fast) // expected-error {{can only appear at file scope or at the start of a compound statement}}84  }85}86