From-SVN: r17654
This commit is contained in:
Jason Merrill 1998-02-03 18:57:24 -05:00
parent 9c0d03672f
commit 82bf778342
6 changed files with 94 additions and 0 deletions

View File

@ -0,0 +1,7 @@
// Build don't link:
struct X
{
static const bool b = true;
static const int i = b ? 1 : 2;
};

View File

@ -0,0 +1,10 @@
extern "C" void abort();
int i;
int j = i++;
int main()
{
if (i != 1)
abort();
}

View File

@ -0,0 +1,20 @@
// Special g++ Options: -O3
typedef int (*fp)();
struct S
{
fp f;
};
static int f()
{
return 0;
}
static const S s = { &f };
int main()
{
return (*s.f)();
}

View File

@ -0,0 +1,14 @@
// Build don't link:
extern "C" void realloc();
class bug {
public:
void realloc(int foo,int bar);
};
void f() {
bug c;
c.realloc(50,50);
}

View File

@ -0,0 +1,20 @@
#include <vector>
template<class E,template<class> class DD = std::vector> class C
{
DD<E> d;
public:
int f();
};
template<class E,template<class> class DD> int C<E,DD>::f()
{
DD<E> d2;
return d2.size();
}
int main()
{
C<int> c;
c.f();
}

View File

@ -0,0 +1,23 @@
template<template<class> class D,class E> class C
{
public:
int g() { return 1; }
};
template<class T> class D
{
public:
int f();
};
template<class T> int D<T>::f()
{
C<D,D> c;
return c.g();
}
int main()
{
D<char> d;
d.f();
}