void test3() { variadic_pasting_args3(1, 2, 3, 4); // CHECK: {{.*}}:109:32: warning: expression result unused // CHECK: {{.*}}:105:72: note: expanded from macro: variadic_pasting_args3 // CHECK: {{.*}}:103:68: note: expanded from macro: variadic_pasting_args2 // CHECK: {{.*}}:102:41: note: expanded from macro: variadic_pasting_args1 variadic_pasting_args3a(1, 2, 3, 4); // CHECK: {{.*}}:115:30: warning: expression result unused // CHECK: {{.*}}:106:71: note: expanded from macro: variadic_pasting_args3a // CHECK: {{.*}}:104:70: note: expanded from macro: variadic_pasting_args2a // CHECK: {{.*}}:102:41: note: expanded from macro: variadic_pasting_args1 }
void test3() { variadic_pasting_args3(1, 2, 3, 4); // CHECK: {{.*}}:109:32: warning: expression result unused // CHECK: {{.*}}:105:72: note: expanded from macro 'variadic_pasting_args3' // CHECK: {{.*}}:103:68: note: expanded from macro 'variadic_pasting_args2' // CHECK: {{.*}}:102:41: note: expanded from macro 'variadic_pasting_args1' variadic_pasting_args3a(1, 2, 3, 4); // CHECK: {{.*}}:115:3: warning: expression result unused // CHECK-NEXT: variadic_pasting_args3a(1, 2, 3, 4); // CHECK-NEXT: {{ \^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}} // CHECK: {{.*}}:106:44: note: expanded from macro 'variadic_pasting_args3a' // CHECK-NEXT: #define variadic_pasting_args3a(x, y, ...) variadic_pasting_args2a(x, y, __VA_ARGS__) // CHECK-NEXT: {{ \^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~}} // CHECK: {{.*}}:104:70: note: expanded from macro 'variadic_pasting_args2a' // CHECK-NEXT: #define variadic_pasting_args2a(x, y, ...) variadic_pasting_args1(x, y ## __VA_ARGS__) // CHECK-NEXT: {{ \^~~~~~~~~~~~~~~~}} // CHECK: {{.*}}:102:41: note: expanded from macro 'variadic_pasting_args1' // CHECK-NEXT: #define variadic_pasting_args1(x, y, z) y // CHECK-NEXT: {{ \^}} }