xref: /minix3/external/bsd/llvm/dist/clang/test/SemaCXX/attributed-auto-deduction.cpp (revision 0a6a1f1d05b60e214de2f05a7310ddd1f0e590e7)
1*0a6a1f1dSLionel Sambuc // RUN: %clang_cc1 -triple armv7 -std=c++14 -x c++ %s -fsyntax-only
2*0a6a1f1dSLionel Sambuc // expected-no-diagnostics
3*0a6a1f1dSLionel Sambuc 
deduce()4*0a6a1f1dSLionel Sambuc void deduce() {
5*0a6a1f1dSLionel Sambuc   auto single_int = [](int i) __attribute__ (( pcs("aapcs") )) {
6*0a6a1f1dSLionel Sambuc     return i;
7*0a6a1f1dSLionel Sambuc   };
8*0a6a1f1dSLionel Sambuc   auto multiple_int = [](int i) __attribute__ (( pcs("aapcs") ))
9*0a6a1f1dSLionel Sambuc                                 __attribute__ (( pcs("aapcs") )) {
10*0a6a1f1dSLionel Sambuc     return i;
11*0a6a1f1dSLionel Sambuc   };
12*0a6a1f1dSLionel Sambuc 
13*0a6a1f1dSLionel Sambuc   auto single_void = []() __attribute__ (( pcs("aapcs") )) { };
14*0a6a1f1dSLionel Sambuc   auto multiple_void = []() __attribute__ (( pcs("aapcs") ))
15*0a6a1f1dSLionel Sambuc                             __attribute__ (( pcs("aapcs") )) { };
16*0a6a1f1dSLionel Sambuc }
17*0a6a1f1dSLionel Sambuc 
single_attribute()18*0a6a1f1dSLionel Sambuc auto ( __attribute__ (( pcs("aapcs") )) single_attribute() ) { }
multiple_attributes()19*0a6a1f1dSLionel Sambuc auto ( ( __attribute__ (( pcs("aapcs") )) ( ( __attribute__ (( pcs("aapcs") )) multiple_attributes() ) ) ) ) { }
20*0a6a1f1dSLionel Sambuc 
21