summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/ext/dllimport2.C
blob: d0de2551a53b378aa63e82018d81a8a368b9b79f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
// { dg-do compile { target i?86-*-cygwin* i?86-*-mingw* x86_64-*-mingw* } }
// PR c++/9738  Dllimport attribute is overriden by later definition/redeclaration

void __attribute__((dllimport)) Bar(void);
void __attribute__((dllimport)) Baz(void);
__attribute__((dllimport)) int Biz;
__attribute__((dllimport)) int Boz;


void Foo(void)
  {
    Bar();
    Baz();
    Biz++;	 
    Boz++;	 
  }

void Baz(void);		// { dg-warning "referenced with dll linkage" }
void Bar(void)		// { dg-warning "referenced with dll linkage" }
  {
  }
extern int Biz;		// { dg-warning "referenced with dll linkage" }
int Boz;		// { dg-warning "referenced with dll linkage" }

void foo()
{
  Biz++;
}