39 lines
521 B
C++
39 lines
521 B
C++
|
// 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);
|
||
|
}
|