Added missing testcase from r145849. Thanks to Dave Blaikie for catching this.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@146169 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Lang Hames 2011-12-08 19:26:24 +00:00
Родитель 77d029f6a2
Коммит 2cad9e32e6
1 изменённых файлов: 28 добавлений и 0 удалений

Просмотреть файл

@ -0,0 +1,28 @@
// RUN: %clang_cc1 -x c++ -verify -fsyntax-only %s
void f1();
struct S {
static void f2();
};
extern void f3() __attribute__((weak_import));
struct S2 {
static void f4() __attribute__((weak_import));
};
void bar() {
bool b;
b = f1; // expected-warning {{address of function 'f1' will always evaluate to 'true'}}
if (f1) {} // expected-warning {{address of function 'f1' will always evaluate to 'true'}}
b = S::f2; // expected-warning {{address of function 'S::f2' will always evaluate to 'true'}}
if (S::f2) {} // expected-warning {{address of function 'S::f2' will always evaluate to 'true'}}
// implicit casts of weakly imported symbols are ok:
b = f3;
if (f3) {}
b = S2::f4;
if (S2::f4) {}
}