12eff71d7SSaleem Abdulrasool // RUN: %clang_cc1 -triple armv7 -std=c++14 -x c++ %s -fsyntax-only
22eff71d7SSaleem Abdulrasool // expected-no-diagnostics
32eff71d7SSaleem Abdulrasool 
deduce()42eff71d7SSaleem Abdulrasool void deduce() {
5*374b5aa1SSaleem Abdulrasool   auto single_int = [](int i) __attribute__ (( pcs("aapcs") )) {
62eff71d7SSaleem Abdulrasool     return i;
72eff71d7SSaleem Abdulrasool   };
8*374b5aa1SSaleem Abdulrasool   auto multiple_int = [](int i) __attribute__ (( pcs("aapcs") ))
9*374b5aa1SSaleem Abdulrasool                                 __attribute__ (( pcs("aapcs") )) {
10*374b5aa1SSaleem Abdulrasool     return i;
11*374b5aa1SSaleem Abdulrasool   };
12*374b5aa1SSaleem Abdulrasool 
13*374b5aa1SSaleem Abdulrasool   auto single_void = []() __attribute__ (( pcs("aapcs") )) { };
14*374b5aa1SSaleem Abdulrasool   auto multiple_void = []() __attribute__ (( pcs("aapcs") ))
15*374b5aa1SSaleem Abdulrasool                             __attribute__ (( pcs("aapcs") )) { };
162eff71d7SSaleem Abdulrasool }
172eff71d7SSaleem Abdulrasool 
single_attribute()18*374b5aa1SSaleem Abdulrasool auto ( __attribute__ (( pcs("aapcs") )) single_attribute() ) { }
multiple_attributes()19*374b5aa1SSaleem Abdulrasool auto ( ( __attribute__ (( pcs("aapcs") )) ( ( __attribute__ (( pcs("aapcs") )) multiple_attributes() ) ) ) ) { }
20*374b5aa1SSaleem Abdulrasool 
21