aboutsummaryrefslogtreecommitdiff
path: root/test/Sema/static-assert.c
blob: 9309987431b97f8fba05e7a06b68761eb1d6aa2d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
// RUN: %clang_cc1 -std=c1x -fsyntax-only -verify %s

_Static_assert("foo", "string is nonzero"); // expected-error {{static_assert expression is not an integral constant expression}}

_Static_assert(1, "1 is nonzero");
_Static_assert(0, "0 is nonzero"); // expected-error {{static_assert failed "0 is nonzero"}}

void foo(void) {
  _Static_assert(1, "1 is nonzero");
  _Static_assert(0, "0 is nonzero"); // expected-error {{static_assert failed "0 is nonzero"}}
}

_Static_assert(1, invalid); // expected-error {{expected string literal for diagnostic message in static_assert}}