// RUN: %clang_cc1 -fsyntax-only -verify %s
// expected-no-diagnostics

struct mystruct {
  int  member;
};

template <int i>
int foo() {
  mystruct s[1];
  return s->member;
}

int main() {
  foo<1>();
}

// PR7405
struct hb_sanitize_context_t {
  int start;
};
template <typename Type> static bool sanitize() {
  hb_sanitize_context_t c[1];
  return !c->start;
}
bool closure = sanitize<int>();

// PR16206
typedef struct {
	char x[4];
} chars;

chars getChars();
void use(char *);

void test() {
	use(getChars().x);
}
