blob: e45ad2a605188bb52c3376b55e26303c279c1b5a [file] [log] [blame]
Chandler Carruth60be4de2011-03-09 10:56:54 +00001// RUN: %clang_cc1 -fsyntax-only %s 2>&1 | FileCheck %s
Chris Lattner037fb7f2009-05-05 22:03:18 +00002
3#define M1(x) x
Chris Lattner037fb7f2009-05-05 22:03:18 +00004#define M2 1;
Chris Lattner037fb7f2009-05-05 22:03:18 +00005void foo() {
Chandler Carruth60be4de2011-03-09 10:56:54 +00006 M1(
7 M2);
8 // CHECK: {{.*}}:6:{{[0-9]+}}: warning: expression result unused
9 // CHECK: {{.*}}:7:{{[0-9]+}}: note: instantiated from:
10 // CHECK: {{.*}}:4:{{[0-9]+}}: note: instantiated from:
Chris Lattner037fb7f2009-05-05 22:03:18 +000011}
12
Chris Lattner037fb7f2009-05-05 22:03:18 +000013#define A 1
Chris Lattner037fb7f2009-05-05 22:03:18 +000014#define B A
Chris Lattner037fb7f2009-05-05 22:03:18 +000015#define C B
Chris Lattner037fb7f2009-05-05 22:03:18 +000016void bar() {
Chris Lattner037fb7f2009-05-05 22:03:18 +000017 C;
Chandler Carruth60be4de2011-03-09 10:56:54 +000018 // CHECK: {{.*}}:17:{{[0-9]+}}: warning: expression result unused
19 // CHECK: {{.*}}:15:{{[0-9]+}}: note: instantiated from:
20 // CHECK: {{.*}}:14:{{[0-9]+}}: note: instantiated from:
21 // CHECK: {{.*}}:13:{{[0-9]+}}: note: instantiated from:
Chris Lattner037fb7f2009-05-05 22:03:18 +000022}
23
Chris Lattnera5c6c582010-02-12 19:31:35 +000024
25// rdar://7597492
26#define sprintf(str, A, B) \
27__builtin___sprintf_chk (str, 0, 42, A, B)
28
29void baz(char *Msg) {
30 sprintf(Msg, " sizeof FoooLib : =%3u\n", 12LL);
31}
32