blob: 3f2865cdb470dffdf30d65f42edfaa78186aad09 [file] [log] [blame]
Ted Kremenek183a8de2011-10-12 20:06:09 +00001// RUN: %clang_cc1 -fsyntax-only %s -verify
2#ifndef __has_warning
3#error Should have __has_warning
4#endif
5
6#if __has_warning("not valid") // expected-warning {{__has_warning expected option name}}
7#endif
8
Jordan Rose78541c42012-07-11 19:58:23 +00009// expected-warning@+2 {{Should have -Wparentheses}}
Ted Kremenek183a8de2011-10-12 20:06:09 +000010#if __has_warning("-Wparentheses")
Jordan Rose78541c42012-07-11 19:58:23 +000011#warning Should have -Wparentheses
Ted Kremenek183a8de2011-10-12 20:06:09 +000012#endif
13
14#if __has_warning(-Wfoo) // expected-error {{builtin warning check macro requires a parenthesized string}}
15#endif
16
Jordan Rose78541c42012-07-11 19:58:23 +000017// expected-warning@+3 {{Not a valid warning flag}}
Ted Kremenek183a8de2011-10-12 20:06:09 +000018#if __has_warning("-Wnot-a-valid-warning-flag-at-all")
19#else
Jordan Rose78541c42012-07-11 19:58:23 +000020#warning Not a valid warning flag
21#endif