view gcc/testsuite/g++.dg/ext/dllimport8.C @ 111:04ced10e8804

gcc 7
author kono
date Fri, 27 Oct 2017 22:46:09 +0900
parents
children
line wrap: on
line source

//  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_" } }