| // PR c++/8378 |
| // Ignore dllimport of static members if marked inlined. |
| // or if definition follows declaration in dllimported class. |
| |
| // { dg-do compile { target i?86-*-cygwin* i?86-*-mingw* x86_64-*-mingw* } } |
| // { dg-options { -Wall -W } } |
| |
| struct __attribute__((dllimport)) Foo |
| { |
| static int static_int; |
| static void static_func1(); |
| static void static_func2(); |
| }; |
| |
| void Foo::static_func1() // { dg-warning "redeclared without dllimport" } |
| { |
| } |
| |
| inline void Foo::static_func2() |
| { |
| } |
| |
| void testfoo() |
| { |
| Foo::static_func1(); |
| Foo::static_func2(); |
| } |
| |
| // { dg-final { scan-assembler-not "__imp_" } } |