diff options
Diffstat (limited to 'test/SemaCXX/warn-consumed-parsing.cpp')
-rw-r--r-- | test/SemaCXX/warn-consumed-parsing.cpp | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/test/SemaCXX/warn-consumed-parsing.cpp b/test/SemaCXX/warn-consumed-parsing.cpp index 0a91636ea949..5c0a04fffe36 100644 --- a/test/SemaCXX/warn-consumed-parsing.cpp +++ b/test/SemaCXX/warn-consumed-parsing.cpp @@ -17,9 +17,9 @@ int returnTypestateForUnconsumable() { } class AttrTester0 { - void consumes() __attribute__ ((set_typestate())); // expected-error {{attribute takes one argument}} - bool testUnconsumed() __attribute__ ((test_typestate())); // expected-error {{attribute takes one argument}} - void callableWhen() __attribute__ ((callable_when())); // expected-error {{attribute takes at least 1 argument}} + void consumes() __attribute__ ((set_typestate())); // expected-error {{'set_typestate' attribute takes one argument}} + bool testUnconsumed() __attribute__ ((test_typestate())); // expected-error {{'test_typestate' attribute takes one argument}} + void callableWhen() __attribute__ ((callable_when())); // expected-error {{'callable_when' attribute takes at least 1 argument}} }; int var0 SET_TYPESTATE(consumed); // expected-warning {{'set_typestate' attribute only applies to methods}} @@ -53,3 +53,13 @@ class AttrTester2 { }; class CONSUMABLE(42) AttrTester3; // expected-error {{'consumable' attribute requires an identifier}} + + +class CONSUMABLE(unconsumed) + __attribute__((consumable_auto_cast_state)) + __attribute__((consumable_set_state_on_read)) + Status { +}; + + + |