comdat2.C: New test.
* g++.old-deja/g++.other/comdat2.C: New test. * g++.old-deja/g++.other/comdat2-aux.cc: Auxiliary source for it. From-SVN: r41449
This commit is contained in:
parent
351a0f00dc
commit
24f808827a
@ -1,3 +1,8 @@
|
||||
2001-04-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* g++.old-deja/g++.other/comdat2.C: New test.
|
||||
* g++.old-deja/g++.other/comdat2-aux.cc: Auxiliary source for it.
|
||||
|
||||
2001-04-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* g++.old-deja/g++.other/overload14.C: New test.
|
||||
|
17
gcc/testsuite/g++.old-deja/g++.other/comdat2-aux.cc
Normal file
17
gcc/testsuite/g++.old-deja/g++.other/comdat2-aux.cc
Normal file
@ -0,0 +1,17 @@
|
||||
template <class T>
|
||||
struct S {
|
||||
static int f ()
|
||||
{
|
||||
static int i;
|
||||
return ++i;
|
||||
}
|
||||
S () {};
|
||||
~S () {};
|
||||
};
|
||||
|
||||
typedef S<int> a;
|
||||
|
||||
int g ()
|
||||
{
|
||||
return a::f();
|
||||
}
|
31
gcc/testsuite/g++.old-deja/g++.other/comdat2.C
Normal file
31
gcc/testsuite/g++.old-deja/g++.other/comdat2.C
Normal file
@ -0,0 +1,31 @@
|
||||
// Test that statics in inline functions are unified between
|
||||
// translation units. Currently we handle this by just suppressing
|
||||
// inling and relying on unification of the function itself.
|
||||
|
||||
// Special g++ Options: -O
|
||||
|
||||
// Additional sources: comdat2-aux.cc
|
||||
|
||||
template <class T>
|
||||
struct S {
|
||||
static int f ()
|
||||
{
|
||||
static int i;
|
||||
return ++i;
|
||||
}
|
||||
S () {};
|
||||
~S () {};
|
||||
};
|
||||
|
||||
typedef S<int> a;
|
||||
|
||||
int g ();
|
||||
|
||||
int main ()
|
||||
{
|
||||
if (a::f() != 1
|
||||
|| g() != 2
|
||||
|| a::f() != 3)
|
||||
return 1;
|
||||
return 0;
|
||||
}
|
Loading…
Reference in New Issue
Block a user