summaryrefslogtreecommitdiffstats
path: root/test/Sema/attr-warn_unused_result.c
blob: b4ef1bbeaf0ef1283abe51c892e3f4a7b197bd60 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// RUN: clang-cc %s -fsyntax-only -verify
// rdar://6587766

int fn1() __attribute__ ((warn_unused_result));
int fn2() __attribute__ ((pure));
int fn3() __attribute__ ((const));

int foo() {
  if (fn1() < 0 || fn2(2,1) < 0 || fn3(2) < 0)  // no warnings
    return -1;
  
  fn1();  // expected-warning {{expression result unused}}
  fn2(92, 21);  // expected-warning {{expression result unused}}
  fn3(42);  // expected-warning {{expression result unused}}
  return 0;
}

int bar __attribute__ ((warn_unused_result)); // expected-warning {{warning: 'warn_unused_result' attribute only applies to function types}}

OpenPOWER on IntegriCloud